value に DB などから取得した値を初期値として表示した場合、バリデーションで戻ってきた際に、入力した値ではなく設定した初期値が表示されてしまう。
入力した値を表示したい場合は、old 関数を利用する。
# 初期値を設定 <input type="text" name="address" value="{{ $user['address'] }}"> # old 関数を使用 # 第一引数:name属性の値 # 第二引数:初期値 <input type="text" name="address" value="{{ old('address', $user['address']) }}">
# is_check の入力値 or 初期値が 1 ならば checked <input type="checkbox" name="is_check" value="1" @if (old('is_check', $user['is_check']) == 1) checked @endif > # is_check の入力値 or 初期値が 1 ならば show クラスを指定 <div @if (old('is_check', $user['is_check']) == 1) class="show" @endif > </div>