2011-01-21 10 views
2

我在我的表單中定義了多個選擇字段:爲什麼我的控制器參數始終從多選字段中獲取單個值?

index.html.haml

=form_for :mydata, {:url=>"/datas/render_datas", :method=>:post} do |form| 

    =select_tag('cars',options_from_collection_for_select(@cars, 'id', 'name'), {:multiple=>'multiple', :class=>'cars'}) 

    = ... 
    =form.submit "Get" 

當我提交表單時,應用程序調用控制器的render_datas方法:

class DatasController < ApplicationController 
    def render_datas 

    selected = params[:cars] 

    # I always get the last clicked car item 

    puts selected.to_s 

    end 
end 

來自rails控制檯,我看到params持有汽車哈希,但它始終保持最後一個鼠標點擊項目,而不是多個選中的數組,爲什麼???如何擺脫它?

回答

1

我認爲你的multiple選項應該是:multiple => true

+0

是的,這是原因。謝謝! – Mellon

相關問題