这是我的StorePolicy:
public function view(User $user, store $store)
{
return true;
},这是我的AuthServiceProvider:
protected $policies = [
store::class => StorePolicy::class,
];,这是我的api.php文件:
Route::group([ 'middleware' => ['auth:sanctum']],function () {
Route::resources([
'store' => StoreController::class,
]);
});这是我的控制器:
public function __construct()
{
$this->authorizeResource(store::class, 'store');
}
public function show($id)
{
echo 'hi :)';
}这就是我的问题,当我检查路由('/store')获得结果,但当我检查路由('/store/1',.eg)时,我得到403错误。我应该怎么做?
奇怪的是,在我的控制器的index方法中,当我检查下面的代码时,我得到了我想要的正确结果,并且它工作了。
public function index()
{
$store = new store();
$this->authorize('view', $store);
$data = store::orderBy('created_at', 'desc')->simplePaginate(10);
return response([
'data' => $data,
], 200);
}发布于 2021-05-31 15:19:02
试一试
public function index(store $store)
{而不是
public function index()
{
$store = new store();https://stackoverflow.com/questions/67768955
复制相似问题