如果我们有两个请求:
public function store(FirstRequest $request, SecondRequest $request)
{ ... }
是否可以同时运行两个请求而不是一个接一个地运行。这样,如果验证没有通过FirstRequest,则SecondRequest将不会启动,只有在FirstRequest通过后才会创建错误消息而没有任何错误。
答案 0 :(得分:1)
我认为你可以“手动创建验证器”
http://laravel.com/docs/5.1/validation#other-validation-approaches
基本上在您的方法中,不使用请求注入,直接在方法中使用规则,并为每组规则调用$ validator-> failed()方法。
这样的事情:
public function store(Request $request){
$rulesFirstRequest = ['field1' => 'required', 'field2' => 'required'];
$rulesSecondRequest = ['field12' => 'required', 'field22' => 'required'];
$validator1 = Validator::make($request->all(), $rulesFirstRequest);
$validator2 = Validator::make($request->all(), $rulesSecondRequest);
if ($validator1->fails() && $validator2->fails()) {
//Do stuff and return with errors
}
// return with success
}
希望有所帮助