Laravel 5.0 で使っていたソースをLaravel 5.2ベースに移植しているのですが、「redirect()->back()->withErrors()」などで渡したはずのエラーメッセージなどが遷移先で消えてしまいます。
php
1if ($validator->fails()){ 2 return redirect()->back()->withInput()->withErrors($validator); 3}
$validator の内容を確認する限り遷移前の時点では messages にエラーメッセージが格納されていました。
遷移後のページのビューに「var_dump($errors)」を使って内容を見るとオブジェクト自体はありますが内容はありません。withInput()で渡したはずの入力値の old() は空でした。
php
1object(Illuminate\Support\ViewErrorBag)#318 (1) { 2 ["bags":protected]=> 3 array(0) { 4 } 5}
セッションの問題かと思い「Session::put('test', 'ok');」でテストしたところこちらは問題なく渡せていました。ちなみにセッションドライバーは file になっています。
エラーメッセージまわりのビューは次のようにしてあります。
html
1@if ($errors->has()) 2<div class="alert alert-danger" role="alert"> 3 <ul> 4 @foreach ($errors->all() as $error) 5 <li>{{$error}}</li> 6 @endforeach 7 </ul> 8</div> 9@endif
withErrors() や withInput() がうまく機能していない理由として
どのような原因が考えられるでしょうか?

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/16 10:09 編集
2016/05/17 02:42