LoginSignup
40
41

More than 5 years have passed since last update.

Laravel CollectiveのFormのSelectで「選択してください」等の一番上の表示を追加する

Last updated at Posted at 2016-01-06

ちょっとしたTIPSです。知ってる人は知ってる。Laravelある程度分かった人にとってはなんでもない話。

環境

  • Laravel5系(5.2まで確認済み)
  • LaravelCollective 5.1,5.2で確認

解決策

+でくっつける

{!! Form::select('user_id', ['' => '選択してください']+array_pluck($users, 'name', 'id'), old('user_id')) !!}

※空値が含まれないのが前提

結果

<select class="form-control" name="user_id">
    <option value="" selected="selected">選択してください</option>
    <option value="1">ななしさん</option>
    <option value="2">ほげほげさん</option>
</select>

ver5.4.2からは

第4引数に配列でplaceholderを設定することで初期表示を設定することが可能になったようです。

{!! Form::select('user_id'
    , array_pluck($users, 'name', 'id')
    , old('user_id')
    , ['placeholder' => '選択してください']) !!}
40
41
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
40
41