W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
如果你使用的是 資源控制器,那么你就可以在控制器構造方法里使用 authorizeResource
方法。此方法將適當?shù)?can
中間件定義附加到資源控制器相應的方法中。
authorizeResource
方法接受模型的類名作為其第一個參數(shù),而將包含模型 ID 的 route /request 參數(shù)的名稱作為其第二個參數(shù)。 您應該確保您的 這樣控制器 是使用 --model
標志創(chuàng)建的,以具有所需的方法簽名和類型提示:
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Models\Post;
use Illuminate\Http\Request;
class PostController extends Controller
{
public function __construct()
{
$this->authorizeResource(Post::class, 'post');
}
}
以下控制器方法將映射到其對應的策略方法:
控制器方法 | 策略方法 |
---|---|
index | viewAny |
show | view |
create | create |
store | create |
edit | update |
update | update |
destroy | delete |
技巧:你可以使用帶有
--model
選項的make:policy
命令去快速生成基于給定模型的策略類:php artisan make:policy PostPolicy --model=Post
。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: