私のプロジェクトでLaravel 5.2.29を使用しています。私はユーザーの入力を検証するためにLaravel Requestファイルを使用しています。バリデータが失敗した場合は、入力フィールドの下にエラーメッセージが表示されます。
しかし、問題は、バリデータが失敗すると、エラーメッセージもフォームも送信されません。ここ
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'email' => 'required|email',
'password' => 'required|min:3|confirmed'
];
}
testController.php(リソースコントローラ)
3つの入力、電子メール/パスワードとパスワードの確認test.blade.php
<!-- email input-->
<div class="form-group {{ $errors->has('email') ? 'has-error' : '' }}">
<label class="col-md-4 control-label" for="email">email</label>
<div class="col-md-4">
<input id="Name" name="email" type="text" placeholder="Enter email address" class="form-control input-md" required="">
{!! $errors->first('email','<span class="help-block">:message</span>') !!}
</div>
</div>
<div class="form-group {{ $errors->has('password') ? 'has-error' : '' }}">
<label class="col-md-4 control-label" for="password">password</label>
<div class="col-md-4">
<input id="Name" name="password" type="password" class="form-control input-md" required="">
{!! $errors->first('password','<span class="help-block">:message</span>') !!}
</div>
</div>
<div class="form-group {{ $errors->has('password_confirmation') ? 'has-error' : '' }}">
<label class="col-md-4 control-label" for="password">Confirm Password</label>
<div class="col-md-4">
<input id="Name" name="password_confirmation" type="password" class="form-control input-md" required="">
{!! $errors->first('password_confirmation','<span class="help-block">:message</span>') !!}
</div>
</div>
<!-- Button -->
<div class="form-group">
<label class="col-md-4 control-label" for=""></label>
<div class="col-md-4">
<button id="" name="" class="btn btn-primary">Submit</button>
</div>
</div>
testRequest.phpを取るブレード・ファイルがあります
public function store(testRequest $request)
{
$test = User::create([
'email' => $request->email,
'password' => bcrypt($request->password);
]);
return redirect("/");
}
routes.php
Route::group(['middleware'=>['web']],function(){
Route::resource('test','testController');
});
[確認パスワード]フィールドに別のパスワードを入力して送信ボタンを押すと、エラーが表示されません。フォームも提出しません。パスワードの確認が一致しないと少なくとも言わなければなりません。私は自分のコードに間違いはないと思う。それはバージョン5.2.29の問題ですか?まったく同じことが5.2.22でうまくいきます。
を確認することができます
Route::resource('test','testController');
を書くあなたが定義しているあなたのコントローラに「\のHttp \アプリを使用\ testRequestを要求しますか」?私は同じバージョンとその作品を使用しているので、 – Vipul@Vipul yes ofcourse。あなたがそれを追加しないと、テストページに移動する直前にエラーが表示されます - クラスが見つかりません –