MrVH
1 هفته پیش توسط MrVH مطرح شد
1 پاسخ

استفاده از middleware در لاراول

سلام
ورژن 11 لاراول رو استفاده میکنم. همیشه مشکل پیدا نشدن کلاس رو داشتم. نمیخوام از ChatGPT کمک بگیرم. یه توضیح کامل میخوام.
کلاس(CheckRole) پیدا نمیشه.
web.php

    Route::middleware(CheckRole::class . ':Full Admin')->group(function () {
        Route::prefix('crm')->name('crm.')->group(function () {
            Route::get('/users', [CrmUserController::class, 'index'])->name('users.index');
            Route::get('/users/create', [CrmUserController::class, 'create'])->name('users.create');
            Route::post('/users', [CrmUserController::class, 'store'])->name('users.store');

Kernel.php

protected $middlewareAliases = [
..
'role' => \App\Http\Middleware\CheckRole::class,
namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class CheckRole
{
    public function handle(Request $request, Closure $next, ...$roles)
    {
        if (!Auth::check()) {
            return redirect('login');
        }

این مشکل برطرف نمیشه تا زمانی که از Trait استفاده میکنم ولی یکجا توی laracast خوندم که بدون استفاده از Trait هم میشه ولی نتونستم پیاده سازی کنم. راهکار دیگه ای به جز middleware اگه دارید پیشنهاد کنید.
ممنون.


ثبت پرسش جدید
رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 1 هفته پیش مطرح شد
0

درود خوبی...
بهتره روش زیر را بکار بگیرید:
https://martinbean.dev/blog/2021/07/29/simple-role-based-authentication-laravel/


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

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