Laravel(5.1)を使っております。
FormRequestでバリデーションを下記のような内容で行っています。
public function rules() { return [ 'agreement' => 'required', ]; } public function response(array $errors) { $request = Request::all(); $view = View::make('confirm', $request)->withErrors($errors); return \Response::make($view->render(), '200'); }
responseをオーバーライドした理由はpostのみで構成している為で、デフォルト時の動作ですとリダイレクトされる為、responseでビューを生成し返すようにしました。
しかしこの方法ですとビューにあるチェックボックスのチェック状態を引き継ぎたく、以下のように記述しておりますが、チェック状態が引き継がれません。
{!! Form::checkbox('agreement', 'true', old('agreement'), array('class' => 'control-label')) !!}
例えばビューの中で以下のように記述すると「$agreement」自体には値がセットされているようです。
@if (isset($agreement)) {{ $agreement }} @endif
チェックした状態であれば「true」が設定されていることを確認済みです。
どのように修正すれば「old('agreement')」が正しく機能するのでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/04/18 00:41