![](/img/trans.png)
[英]Rails form_for multiple collection_select, values not selected on form failure
[英]Rails, collection_select - remembering values with :selected after form submitted
(在没有版本选择的内部工作服务器上使用Rails 2.3.5,我很新)
我正在构建一个搜索表单,其中需要向用户提供目录列表,以便他们可以选择要搜索的目录。 我试图弄清楚如何在提交表单后使collection_select的选定值保持不变。
假设用户从collection_select中选择了3个目录,则这些目录的ID在params中将如下所示:
directory: !map:HashWithIndifferentAccess
id:
- "2"
- "4"
- "6"
我知道您可以手动指定多个选定的项目:
<%= collection_select :directory, :id, @directories, :id, :name,
{:selected => [2,4,6]}, {:size => 5, :multiple => true} %>
我也玩了一些,并且能够针对params哈希中的单个值“ to_i”:
<%= collection_select :directory, :id, @directories, :id, :name,
{:selected => params[:directory][:id][0].to_i}, {:size => 5, :multiple => true} %>
我不知道是如何同时使用:directory参数的所有值,以便用户选择的内容在提交表单后仍然保留。 谢谢你的帮助。
我不确定您要问的是什么,但是如果您尝试获取params[:directory][:id]
的字符串数组作为整数数组,那么您所需要做的就是
params[:directory][:id].map{|id|id.to_i}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.