我有一个项目列表,我想将其作为变量的选项。它们将作为数组保存在模型中,并在 form_for 中显示为列表。我在用
f.select(:var_name, [["option1"],["option2"],["option3"]], {}, {multiple: "multiple"})
保存到模型中效果很好。 但是当返回到表单时,没有选择任何内容(即使变量已将它们全部保存)。然后,如果我再次提交表单,它会传递一个空数组。正确保存的唯一方法是每次查看表单时重新选择我想要的那些。 如何让它们进入多选框?
最佳答案
我相信您的问题源于您的 choices
参数。您可能需要一组 [option,id] 映射:
f.select(:person_id, Person.all.collect {|p| [ p.name, p.id ] }, {}, { :multiple => true })
关于ruby-on-rails - RoR form_for 中的多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9280480/