根据请求输入从控制器调用表单请求

Call form request from controller based on request input

我有一个接受输入的控制器。此输入由请求验证 (POSRequest) 解析。如果请求验证成功,则将请求传递到控制器中。标准 laravel 东西。

我必须在控制器 POSRequest $requests 中键入提示才能触发请求验证,如何根据 POSRequest $ 中提供的输入调用其他请求request?

这里有一些代码可以把事情搞清楚:
public function process(POSRequest $request){ ... }

我的所有请求都进入 process 函数,根据 $requests 的输入,我需要调用其他函数:
private function StartRequest(POSStartRequest $request) { ... }
private function CheckRequest(POSCheckRequest $request) { ... }

我如何从进程函数中调用控制器中的这些函数并将 POSRequest 转换为其他请求之一?

提前致谢!

您可以在控制器方法中手动创建验证器

public function process(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()) {
            //do your stuff
            if ($validator2->fails()) {
                //do your stuff    
            }
        }
        // next stuff
    }