У меня есть следующая политика:
<?php
namespace App\Policies;
use App\Models\User;
use Illuminate\Auth\Access\HandlesAuthorization;
class EventPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view the whole model.
*
* @param User $user
* @return boolean
*/
public function list(?User $user) {
return true;
}
}
AuthServiceProvider
содержит правильную привязку:
protected $policies = [
Event::class => EventPolicy::class,
];
В моем контроллере:
public function index() {
$this->authorize('list');
return $this->repository->paginate();
}
Это возвращениеa 403 Запрещенный ответ:
This action is unauthorized.
В документации Laravel говорится, что вы можете сделать так, чтобы пользователь объявлял User
необязательным или устанавливал значение по умолчанию null
.Я пробовал оба безрезультатно.
Я бегу v5.8
Есть идеи?