⏳۵۰٪ تخفیف فقط تا پایان جشنواره؛ بعدش همه‌چیز به قیمت قبل برمی‌گرده!

مشاهده دوره‌ها
ثانیه
دقیقه
ساعت
روز
راکت

تعریف middleware در کنترلر لاراول 11

بدون پاسخ

سلام دوستان
من از لاراول 11 استفاده میکنم . با استفاده از پکیج spatie/laravel-permission میخوام دسترسی هارو تعریف کنم. مشکلم اینه که دایکیومنتش اپدیت نیست!
در دایکیونتش برای تعریف میدلویر در کنترلر اینجوری نوشته :

public function __construct()
{
    $this->middleware(['role:manager','permission:publish articles|edit articles']);
    // or
    $this->middleware(['role_or_permission:manager|edit articles']);
    // or with specific guard
    $this->middleware(['role_or_permission:manager|edit articles,api']);
}

ولی در لاراول 11 برای تعریف middleware در constractor باید اینجوری بنویسی:

<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Routing\Controllers\HasMiddleware;
use Illuminate\Routing\Controllers\Middleware;

class UserController extends Controller implements HasMiddleware
{
    /**
     * Get the middleware that should be assigned to the controller.
     */
    public static function middleware(): array
    {
        return [
            'auth',
            new Middleware('log', only: ['index']),
            new Middleware('subscribed', except: ['store']),
        ];
    }

    // ...
}

الان چجوری باید این کد دایکیونت رو به متد جدید لاراول تبدیل کنم؟ لطفا راهنمایی کنید.

لینک های مربوطه:
https://spatie.be/docs/laravel-permission/v6/basic-usage/middleware#content-controllers
https://laravel.com/docs/11.x/controllers#controller-middleware

ثبت پرسش جدید

پاسخ‌ها

0

هنوز پاسخی ثبت نشده

اولین نفری باشید که به این پرسش کمک می‌کند و مسیر حل مشکل را باز می‌کند.

اولین پاسخ را بنویسید

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

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

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