Промежуточное ПО на основе параметра маршрута laravelPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Промежуточное ПО на основе параметра маршрута laravel

Сообщение Anonymous »

У меня есть такой маршрут:

Код: Выделить всё

Route::get('users/{type}', ['as'=>'users.index', 'uses'=>'UserController@index', 'middleware' => ['can:user-index']])->where('type', '(members|enquiries)');
Могу ли я использовать здесь динамическое промежуточное программное обеспечение на основе типа параметра маршрута?

Например, если типом являются запросы, то промежуточное программное обеспечение должно быть «can:enquiries-index», аналогично для членов «can:members-index».

Я знаю, что это можно сделать в функции контроллера с помощью метода авторизации, но я использую все авторизации только в файле маршрута. ТАК хотел сохранить это только здесь.

Я использую определение Laravel Gates для авторизации маршрутов:

В AuthServiceProvider@boot

Код: Выделить всё

    Gate::before(function ($user, $ability) {
$permission = Permission::where('slug', $ability)->first();
return $user->hasPermissionTo($permission);
});
Версия Laravel: 7.9.2

Версия PHP: 7.2

Подробнее здесь: https://stackoverflow.com/questions/618 ... -parameter
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»