ルーメンに$this->validate
ヘルパーを使用しようとしています。しかし、私が後者を使用するとき、私は正確なパラメータとその値を得ることができないので(フィールドが値を持っていても、それはまだ失敗とマークするでしょう)ため、要求では$request->all()
の代わりに$request->json()->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()
でないものを渡す必要がありますので。エラーに対処するにはどうすればよいですか?
を扱いますか?バリデーションに配列を渡すことはできません。それは、Requestオブジェクトである必要があります。 –