我有以下政策:
<?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();
}
返回的是403禁止访问响应:
操作未经授权。
Laravel文档指出,您可以使声明User
可选或将默认值设置为null
。 我尝试过两种方法,但都没有成功。
我正在运行v5.8
。
有什么想法吗?