Laravel如何将自定义数组/请求传入FormRequest?调用validated()报错
问题:自定义FormRequest调用validated()报空指针错误
我尝试动态创建自定义请求并传入FormRequest,通过createFrom方法基于基础Request实例生成CustomFormRequest对象,但调用$request->validated()时触发错误:Call to a member function validated() on null in /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/FormRequest.php:221
完整代码
Function A代码
private $service; public function __construct( Service $service, ) { $this->service = $service; } ... $data = [ "variable_a" => "string", 'variable_b' => true, ]; $request = new Request(); $request->replace($data); $customFormRequest = new CustomFormRequest(); $validate = $customFormRequest::createFrom( $request ); $return_data = $this->service->project($validate);
Service代码
public function project(CustomFormRequest $request) { \Log::debug($request); $data = $request->validated(); \Log::debug($data); }
注意:在Service中打印日志时,$request和$request->all()均能正常输出数组中的值。
内容的提问来源于stack exchange,提问作者Mr. Kenneth
相关产品推荐
相关产品推荐

