ساخت دو لاگین در یک پروژه بطور مثال یکی برای قسمت ادمین ها و دومی برای قسمت فروشگاهی . ایا دستور خاصی هست ؟ یا میشه با همون دستور make:auth و تغییرات کاری کرد؟
سلام
@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');
});
به این صورت استفاده میشه
سلام
@masoodhoseiny
میشه 2 تا ساخت ، ولی این کار پیشنهاد نمیشه و اصولی نیست زیاد.
باید دسته بندی یوزر ها صورت بگیره با میدلور چک بشن!
شاید پاسخ شما همینجا باشد
سلام
اصولش اینه که از سیستم ACL یا به اصطلاح Access Level Control استفاده کنی
نیاز نیست دو تا لاگین بسازی و اصلا کار درستی نیست
هر کاربر یه نقش داره و هر نقش می تونه یه سری کار رو انجام بده که تو ACL ما اینا رو با دو جدول اصلی roles و permissions کنترل می کنیم
لاراول هم با اضافه کردن Policies کار رو برامون خیلی راحت تر کرده
پیشنهاد می کنم اگه با این مباحث آشنایی نداری حتما مطالعه کنی که کلی دستت رو جلو میندازه :)