Questions tagged «multi-select»



9
为什么使用嵌入式数组在我的Rails多重选择中第一个元素总是空白?
我正在使用Rails 3.2.0.rc2。我有一个Model,其中有一个静态变量Array,该静态变量通过一种形式提供,以便用户可以选择的子集Array并将其选择保存到数据库中,存储在中的单个列中Model。我已经在存储的数据库列上使用了序列化,Array并且Rails正确地将用户的选择转换为Yaml(并在读取该列时返回到数组)。我正在使用多选表单输入进行选择。 我的问题是,按照我目前的方式,一切都会按我预期的那样工作,只是用户的子集数组在发送到服务器时始终具有空白的第一个元素。 这没什么大不了的,我可以写出代码以消除这种情况,但是我觉得我只是在犯某种语法错误,因为在我看来,默认的Rails行为不是故意的无需任何理由即可添加此空白元素。我一定错过了某件事,或者忘记了禁用某种设置。请帮助我了解我所缺少的内容(或为我提供一些好的文档,这些文档比在管间上可以找到的更深入地描述了此内容)。 MySQL数据库表“模型”: 包含一个名为subset_arrayTEXT字段的列 类模型包括以下设置: serialize :subset_array ALL_POSSIBLE_VALUES = [value1, value2, value3, ...] 用于编辑模型的表单包括以下输入选项: f.select :subset_array, Model::ALL_POSSIBLE_VALUES, {}, :multiple => true, :selected => @model.subset_array 从客户端PUT到服务器看起来像这样: 假设仅选择了value1和value3 "model" => { "subset_array" => ["", value1, value3] } 数据库更新如下所示: UPDATE 'models' SET 'subset_array' = '--- \n- \"\"\n- value1\n- value3\n' 如您所见,正在发送并在数据库中设置的数组中还有这个多余的空白元素。我该如何摆脱呢?我的f.select通话中是否缺少参数? 非常感谢:) …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.