Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为什么我的控制器参数总是从多个选择字段中获取单个值?_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 为什么我的控制器参数总是从多个选择字段中获取单个值?

Ruby on rails 为什么我的控制器参数总是从多个选择字段中获取单个值?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我在表单中定义了多个选择字段: 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'}) = ...

我在表单中定义了多个选择字段:

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\u data
方法:

class DatasController < ApplicationController
  def render_datas

    selected = params[:cars]

    # I always get the last clicked car item

    puts selected.to_s 

  end
end
class DatasController

从rails控制台,我看到params保存cars散列,但它总是保存最后一个鼠标单击的项目,而不是多个选定数组,为什么???如何摆脱它?

我认为您的
多个
选项应该是
:多个=>正确的