راکت
حل شده

ساخت دو لاگین در یک پروژه

5 پاسخ

ساخت دو لاگین در یک پروژه بطور مثال یکی برای قسمت ادمین ها و دومی برای قسمت فروشگاهی . ایا دستور خاصی هست ؟ یا میشه با همون دستور make:auth و تغییرات کاری کرد؟

ثبت پرسش جدید

پاسخ‌ها

5
Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

بهترین پاسخ

سلام
@masoodhoseiny

<?php

namespace App\Http\Middleware;

use Closure;

class CheckAdminAuth
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {

            if(auth()->check()) {
            if(auth()->user()->isAdmin())
            return $next($request);
        }

        return back();
    }
}

این برای خود میدلور قسمت ادمین

توی روت ها هم
یه مثال براتون بیارم


Route::group(['middleware' => 'auth:web'], function () {
    $this->get('/dashboard','adminController@index')->middleware('CheckAdmin');
    $this->get('/dashboard/settings','adminController@settings')->middleware('CheckAdmin');
    $this->post('/dashboard/settings','adminController@settings_upd')->middleware('CheckAdmin');
});

به این صورت استفاده میشه

bardia
bardia
@mrbardia72

تخصص: Golang/Laravel

یه فیلد به جدول user اضافه کنید به اسم is_admin که اگر یک بود یعنی ادمین اگر صفر بود قسمت فروشگاهی
این رو باید توی میدلویر چک بشه فیلد is_admin

Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

سلام
@masoodhoseiny

میشه 2 تا ساخت ، ولی این کار پیشنهاد نمیشه و اصولی نیست زیاد.
باید دسته بندی یوزر ها صورت بگیره با میدلور چک بشن!

شاید پاسخ شما همین‌جا باشد

masood
masood
@masoodhoseiny

تخصص: برنامه نویس

تو میدلور چه کدی بزنم ممنون میشم نمونه کد بفرستین

MostafaRDE
MostafaRDE
@MostafaRDE

@masoodhoseiny

سلام
اصولش اینه که از سیستم ACL یا به اصطلاح Access Level Control استفاده کنی
نیاز نیست دو تا لاگین بسازی و اصلا کار درستی نیست
هر کاربر یه نقش داره و هر نقش می تونه یه سری کار رو انجام بده که تو ACL ما اینا رو با دو جدول اصلی roles و permissions کنترل می کنیم

لاراول هم با اضافه کردن Policies کار رو برامون خیلی راحت تر کرده

پیشنهاد می کنم اگه با این مباحث آشنایی نداری حتما مطالعه کنی که کلی دستت رو جلو میندازه :)

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام