私は、単純なポリシーを生成するために発電機を使用していますポリシー能力メソッドが呼び出されないのはなぜですか?
:私のようにTeamsController
でそれを呼び出そうとしました
protected $policies = [
Team::class => TeamPolicy::class,
];
:
php artisan make:policy TeamPolicy
をそして、私のようにAuthServiceProvider
でそれを登録しています
$this->authorize('update', $team);
私のポリシーファイルPolicies\TeamPolicy.php
は次のとおりです。
<?php
namespace App\Policies;
use App\Team;
use Illuminate\Auth\Access\HandlesAuthorization;
class TeamPolicy
{
use HandlesAuthorization;
/**
* Create a new policy instance.
*
* @return void
*/
public function __construct()
{
//
}
public function update(Team $team)
{
App:debug("Policy update called!");
return true;
}
}
しかし、政策のupdateメソッドが呼び出されていない、と$this->authorize('update', $team);
を呼び出すときに、私はお知らせくださいエラー403を得るん!
あなたのチームコントロールはどのように見えますか? – Kasnady
My TeamsControllerは他の通常のコントローラと同じように見えます。それは、 '$ this-> authorize( 'update'、$ team);という呼び出しを含む編集と更新のメソッドを含む多くのメソッドを持っています;上記のエラーを出力します。残念ながら、コントローラの仕様をそれは秘密です。 – WingsOfAltair