2011-01-21 9 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

相关问题