在策略中注入 Illuminate\Http\Request 实例

问题描述 投票:0回答:1

我想在策略中自动注入Request实例来执行一些与请求实例相关的检查,就像它由控制器中的服务容器自动注入一样。政策上怎么可能做到?

class GroupPolicy extends Policy
{

    public function delete(User $user, Request $$request): Response
    {

        $message = 'This is a message';

        if ($message) {
            return Response::deny($message);
        }

        return Response::allow();
    }

}
laravel laravel-10
1个回答
0
投票

尝试:

use Illuminate\Http\Request;
use Illuminate\Auth\Access\Response;

class GroupPolicy
{
    public function delete(User $user): Response
    {
        
        $request = app(Request::class);

        $message = 'This is a message based on request';
        
        if ($message) {
            return Response::deny($message);
        }

        return Response::allow();
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.