Как перенаправить пользователя на разные панели мониторинга на основе поля уровня в таблице '' 'users' '' в Laravel Breeze?
Пожалуйста, простите меня, если мой вопрос слишком общий, но я в своем уме.
У меня есть таблица пользователей с полем уровня, как показано ниже:
$table->unsignedSmallInteger('level')->after('password');
Я хочу перенаправить пользователя на разные панели мониторинга в зависимости от значения поля уровня. Например, для пользователя уровня 0
\admin\dashboard
для пользователя уровня 1
\user\dashboard
Я использую Laravel 8.4 и laravel / breeze для аутентификации.
Спасибо
1 ответ
Хорошо, нашел решение.
- На
routes\web.php
Я закомментировал маршрут панели мониторинга по умолчанию и создал новый маршрут для/dashboard
и указал наApp\Http\Controllers\DashboardsController@index
// Route::get('/dashboard', function () {
// return view('dashboard');
// })->middleware(['auth'])->name('dashboard');
require __DIR__.'/auth.php';
Route::get('/dashboard','App\Http\Controllers\DashboardsController@index')->middleware(['auth'])->name('dashboard');
-
index
функцияDashboardsController
public function index() {
$data['authenticated_user'] = Auth::user();
if($data['authenticated_user']->level == 0) {
echo "Admin";
} elseif($data['authenticated_user']->level == 1) {
echo "Employee";
} else {
echo "Security";
}
}
В основном это достигнет того, чего я хочу достичь.
Спасибо