2014-02-13 58 views
1

我在軌道上使用紅寶石,但我無法在多選擇窗體中顯示數據庫中選定的值。單選擇工作正常,但多選擇顯示空白值,我檢查了來自控制器的值,他們是正確的,但它不顯示值!我正在使用多選擇的jquery插件,但我不認爲這是問題。多選擇沒有顯示從模型中選擇的值,但單選擇在軌道上做紅寶石

<!-- chosen select for course categories --> 
<div class="row"> 
    <div class="medium-5 column with_chosen"> 
    <%= f.collection_select :categories, 
    Category.all ,:id,:name, 
    { include_blank: false}, 
    { :multiple=>true, class: 'chosen-select medium', :data => { :placeholder => ' ' }} 
    %> 
    </div> 
</div> 

<!-- change partner for course --> 
<div class="row"> 
    <div class="medium-5 column"> 
    <%= f.collection_select :partner, 
     Partner.all, :id,:name , 
    { include_blank: false }, 
    { class: 'chosen-select', :multiple=>false, :data => { :placeholder => ' Brand Partner' }} 
    %> 
    </div> 
</div> 

任何建議會很好?

+0

請給我你的問題演示鏈接... –

+0

@PiyushMarvaniya不知道你是什麼意思的問題演示鏈接 – user3247858

回答

0

可能適合你。

<!-- chosen select for course categories --> 
<div class="row"> 
    <div class="medium-5 column with_chosen"> 
    <%= f.collection_select :categories, 
    { :selected=>Category.all.collect{|c| c.id}}, 
    { include_blank: false}, 
    { :multiple=>true, class: 'chosen-select medium', :data => { :placeholder => ' ' }} 
    %> 
    </div> 
</div> 
0
<div class="row"> 
    <div class="medium-5 column with_chosen"> 
    <%@course_categories=[]%>   
     <% @course.categories.each do |t| %> 
     <% @course_categories << t.id.to_s %> 
     <% end %> 
    <%= f.collection_select(:categories, 
    Category.all ,:id,:name, 
    { include_blank: true, selected: @course_categories }, 
    { :multiple=>true, class: 'chosen-select medium', :data => { :placeholder => ' ' }}) 
    %> 

    </div> 
</div> 

所以我所做的是我通過多選擇的ID已轉換爲刺痛的陣列,然後它的ID相匹配,並從數據庫中顯示所選值!