0

是否可以在单个控制器中使用 2 个不同的 FormRequest 验证,一个用于store,另一个用于index,如何?

我曾经method()从 中返回不同的验证rules(),例如:

public function rules()
{

    if($this->method() == 'GET')
    {
        return [
            'customer' => 'required|numeric',
        ];
    }

    if($this->method() == 'POST')
    {
        return [
            'author' => 'required|numeric',
        ];
    }
}

但看起来很不舒服

4

1 回答 1

1

您可以在一个控制器中使用 2 种不同的 Formrequest。

我这样做如下

class PostController extends Controller
{

    public function index(ManagePostRequest $request){
       // your code goes here
    }

    public function create(CreatePostRequest $request){
       // your code goes here
    }

    public function store(StorePostRequest $request){
       // your code goes here
    }
}

所以根据方法你可以有不同rules的表单请求。您也可以将它们用于authorize该方法。

希望这就是您要问的,因为这个问题对我来说有点不清楚。

于 2020-04-26T12:00:11.793 回答