راکت

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

1 پاسخ

سلام
ورژن 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 اگه دارید پیشنهاد کنید.
ممنون.

ثبت پرسش جدید

پاسخ‌ها

1
رایموند
رایموند
@Raymond

تخصص: مختصص وردپرس - برنامه نویس لاراول

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

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

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

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