第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Laravel 8 | 不打策略方法

Laravel 8 | 不打策略方法

PHP
GCT1015 2024-01-19 10:29:48
我試圖在 Laravel 8 中定義一些我無法工作的策略,但是我在 Laravel 7 中有相同的項目,它看起來工作得很好。我正在使用 JSON API 規(guī)范包,它內(nèi)置了授權者,允許我在不同的方法上運行策略。無論如何,我正在嘗試在所有路線上添加“創(chuàng)建”策略。我有以下代碼:public function create($type, $request){    $this->authorize('create', $type);}在這個上下文和示例中,$type = 'App\Models\User'如果我在該行之前執(zhí)行一個dd操作,我可以確認我正在使用該方法。我的里面AuthServiceProvider有以下內(nèi)容:public function boot(){    Gate::guessPolicyNamesUsing(function ($modelClass) {        return 'App\\Policies\\' . class_basename($modelClass) . 'Policy';    });}正如前面所說,這在另一個項目中完美運行。以下是我的政策,您可以看到它非?;?。<?phpnamespace App\Policies;use App\Models\User;class UserPolicy{    public function create(User $user)    {        return true;    }}如果我在策略類中創(chuàng)建一個構造函數(shù),我可以確認它正在受到攻擊,并且我正在進入策略內(nèi)部,這就是為什么這讓我如此困惑。我嘗試更改方法的名稱,以防它與命名約定發(fā)生沖突,但似乎沒有任何內(nèi)容與之一致。我曾嘗試將作曲家作為雙重檢查,但再次沒有運氣。
查看完整描述

1 回答

?
守候你守候我

TA貢獻1802條經(jīng)驗 獲得超10個贊

問題在于,當前沒有經(jīng)過身份驗證的用戶,盡管在方法參數(shù)中指定了用戶,但它仍然失敗。


當提供訪客路由時,您仍然需要將參數(shù)添加到方法中,但將其設為可選。


public function create(?User $user)

{

    // do logic here

}

有關此內(nèi)容的文檔可以在以下鏈接中找到:https ://laravel.com/docs/master/authorization#guest-users


查看完整回答
反對 回復 2024-01-19
  • 1 回答
  • 0 關注
  • 131 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號