سلام
دوستان من یک جدول ادمین دارم و یک جدول یوزر
چطور میتونم احراز هویت رو انجام بدم؟
میخوام داشبورد مدیریت از کاربر جدا باشه
@bahadori.embi
اینو ببینید:
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
],
یعنی اومدم admin رو هم بهش اضافه کردم در فایل auth.php
و همچنین در ادامه همون فایل :
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admins' => [
'driver' => 'database',
'table' => 'admins',
],
],
من الان با کدهای بالا اومدم 2 دسته کاربر درست کردم یعنی user و admin که البته باید موقع ورود یا همون attempt نوع کاربر رو مشخص کنید. یعنی :
Auth::quard('admin')->attempt(...)
و یا :
Auth::quard('user')->attempt(...)@bahadori.embi
از middleware استفاده کنید
@mohsenbostan
ممنونم
میشه لطفا بیشتر توضیح بدین؟
یا لینک یه مقاله بدین؟
ممنونمازتون
شاید پاسخ شما همینجا باشد
@rezajashnsaz0011
ممنون
اما حتما میخوام جدول هاش جدا باشه
@drcode.ir
میشه لطفا بیشتر راهنمایی کنید؟
quard در لاراول یک امکانی هست دقیقا همین نیاز شمارو برطرف میکنه. تکه کد زیر رو ببینید.
if (Auth::guard('admin')
یعنی اگر نوع کاربر وارد شده از نوع admin بود.
حالا همین کارو میتونید در قالب middleware هم استفاده کنید به صورت زیر .
route:get(...)->middleware('auth:admin');
یعنی فقط کاربرهایی که admin هستند به این روت میتونن دسترسی داشته باشن.
فقط یکی دوتا تنظیمات دیگه در فایل auth.php نیاز هست که باید انجام بدید و میتونید از لینک زیر استفاده کنید.
https://laravel.com/docs/master/authentication#adding-custom-guards
@drcode.ir
ممنونم از لطفتون
باید کد زیر رو به فایل auth.php اضافه کنم؟
'providers' => [
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],