2
我想在流明中使用$this->validate
助手。但是,根據請求,我只需要執行$request->json()->all()
而不是$request->all()
,這是因爲當我使用後者時,我無法獲取確切的參數及其值(即使字段具有值,它仍會將其標記爲失敗)。驗證laravel錯誤
$請求 - > JSON() - >所有()輸出:
array:6 [
"username" => ""
"first_name" => "asaas"
"last_name" => ""
"email_address" => ""
"password" => ""
"password_confirmation" => ""
]
$請求 - >所有()輸出:
array:1 [
"{"username":"","first_name":"asaas","last_name":"","email_address":"","password":"","password_confirmation":""}" => ""
]
現在,當我做通過幫助$request->json()->all()
:
$this->validate($request->json()->all(), [
'username' => 'required|min:2|max:20',
'first_name' => 'required|max:50',
'last_name' => 'required|max:50',
'email_address' => 'required|email',
'password' => 'required',
]);
這將拋出一個錯誤:
Type error: Argument 1 passed to Laravel\Lumen\Routing\Controller::validate() must be an instance of Illuminate\Http\Request, array given, called in
如我所料,因爲$request
應傳遞不是一個與json()->all()
。我能做些什麼來解決這個錯誤?
爲什麼你使用'$請求 - > JSON() - >所有()'?您不能將數組傳遞給驗證,它需要是Request對象。 –