2016-10-18 1 views
1

ここでの問題は、フォームを送信するたびにcountryフィールドが再設定されていないことです。私が期待しているのは、ユーザーがフォームを送信して、サーバーがそれを検証してエラーを返してリダイレクトし、ユーザーが入力するデータを保持してから送信することです。検証エラーが発生した場合、フォームに古いデータを再入力する方法はありますか?

いくつかの未知の理由で、国のフィールドは古い入力を取得していませんが、状態フィールドは古い入力を完全に取得しています。

<select id="country" name ="country" class="form-control rounded input-lg text-center no-border" required autofocus <option> </option> </select> </br> <select name ="state" id ="state" class="form-control rounded input-lg text-center no-border" required autofocus <option>{{ Request::old('state') }}</option> </select> </br>

答えて

3

あなたはそのためだけold() helperを使用することができます。そうする

<input type="text" name="username" value="{{ old('username') }}"> 

もう一つの方法は、Laravel Collective form model bindingを使用することです:

この場合
{!! Form::model($user, ['route' => ['user.update', $user->id]]) !!} 

すべてのフォームデータが再されます - 自動的に集められる。

+0

ちょっとアレクセイ、 お返事ありがとうございます。私は自分のフォームに多くの入力フィールドを使用しているので、フォームビルダーの使用を避けたかったので、フォームビルダーがそれらをサポートするかどうかわかりません。 –

+1

@TonyBatista、たくさんの入力をしているのなら、特にLaravel Collectiveフォームを使用することをお勧めします。 )これはハンドリングフォームをずっと簡単にします。 –

関連する問題