Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.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 Rails 2.3.8 multiple-select不返回数组,即使使用_Ruby On Rails_Ruby_Forms_Select_Form Helpers - Fatal编程技术网

Ruby on rails Rails 2.3.8 multiple-select不返回数组,即使使用

Ruby on rails Rails 2.3.8 multiple-select不返回数组,即使使用,ruby-on-rails,ruby,forms,select,form-helpers,Ruby On Rails,Ruby,Forms,Select,Form Helpers,我承认在这个问题上有点困惑,因为我做rails已经有一段时间了。 我试图从多选组合框中获取params[]中的值数组 这是rails 2.3.5和ruby 1.8.6,我知道,我知道 生成的html是: <select id="shows_" multiple="multiple" name="shows[]"> <option value="5">A Grand Night For Singing (Jan - Feb 2007)</option>

我承认在这个问题上有点困惑,因为我做rails已经有一段时间了。 我试图从多选组合框中获取params[]中的值数组

这是rails 2.3.5和ruby 1.8.6,我知道,我知道

生成的html是:

 <select id="shows_" multiple="multiple" name="shows[]">
    <option value="5">A Grand Night For Singing (Jan - Feb 2007)</option>
    <option value="6">Who's Afraid of Virginia Woolf? (Mar - Apr 2007)</option>
  ...more options...
 </select>
捕获的值是正确的,但我预期[17,18,19],即一个由N个元素组成的数组,而不是由N个逗号分隔的值组成的单个元素数组


我可以很容易地围绕这一点编写代码,但我很困惑,因为我很确定这一点过去是有效的,我所期望的行为就是记录在案的行为。有什么想法吗?

参数由Rack::Request和Rack::Utils解析。你应该看看课堂。请注意,链接不一定指向您正在使用的机架版本。

我查看了并同意您的输出看起来是正确的。我甚至在Rails2.3.11项目上尝试过它,它如您所期望的那样工作。如果你只是按照apidock上展示的方式胡编乱造,那么它在2.3.8中有效吗?更正,我在2.3.5而不是2.3.8。实际上,我已经跟踪到了ActionController::Dispatcher.call的堆栈跟踪,并且params['show']甚至在调用的那个点上也具有上述值。
(rdb:62) p params[:shows]
["17,18,19"]