2016-04-13 14 views
-1

form.selectのフォームでは、デフォルトですべてのオプションを選択します。私はすべての年齢を示している形式で年齢モデルを持っています。デフォルトですべてのオプションを選択したいと思います。私のコードは以下の通りです:私はチェックしてこれをしなかったデフォルトですべての値を選択する方法form_for select

f.select(:age, options_for_select(Age.pluck(:age, :id) , :selected => @campaign.ages.pluck(:id)),{:multiple=>true , :required=>true}) 
+0

選択された私は選択されたIDと私はいくつかのオプションを選択することができます複数の真実を作った。しかし、問題は、デフォルトですべての選択されたオプションとしてそれを試してみたいです。 –

答えて

0

f.select(:age, options_for_select(Age.pluck(:age, :id) , :selected => @campaign.ages.pluck(:id)),{},{:multiple=>true , :required=>true}) 
+0

あなた自身の答えも受け入れることができます。 –

0

はこれを試してみてください。ユーザーが新しいレコードとして作成された場合、それらのすべてを選択し、編集の場合は、選択したレコードのみを表示します。以下のコードは、それ自身のことです:

<% if @campaign.new_record? %> 
    <%= f.select(:age, options_for_select(Age.pluck(:age, :id), :selected => Age.pluck(:id)), {}, {:multiple => true,:required => true ,:class => 'form-control'}) %> 
<% else %>  
    <%= f.select(:age, options_for_select(Age.pluck(:age, :id), :selected => @campaign.ages.pluck(:id)), {}, {:multiple => true,:required => true ,:class => 'form-control'}) %> 
<% end %> 
+0

これを行うと、そのフィールドは単一選択になります。私はマルチセレクションですべてのオプションをデフォルトで選択したい。 –

関連する問題