在具有多个模型的表单上使用多个collection_select元素

时间:2010-01-18 19:47:39

标签: ruby-on-rails

我只是在学铁路,而且我遇到了一些麻烦。让我从我的应用程序的简单细分开始 - 这是一本食谱(各种各样)

  • 食谱有一种或多种成分(金枪鱼,脾脏等)
  • 配料有一个单位(盎司,磅等)
  • 从查找表中提取单位

这是一个截图,有助于进一步澄清事情: Form Mockup

这是我的问题:我的collection_select元素名称应该类似于unit[id][]

相反,他们都被命名为unit[id]。这是我正在使用的片段:

collection_select(
    :unit, 
    :id, 
    @units, 
    :id, 
    :name, 
    options = {
        :prompt => "Please Select", 
        :class => "ingredient_unit",
        :name => "unit[][]",
        :id => "unit:" + i.to_s()
    }
);

然而,这就是它的输出:

<select id="unit_id" name="unit[id]">
<option value="">Please Select</option>
<option value="1">Ounces</option>
</select>
...

现在,在php中,这些下拉列表将命名为unit[]。我是以错误的方式解决这个问题吗?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我不确定“选项”哈希中的“名称”选项是做什么的。你可以发一个链接到你找到文件的地方吗?看起来您正在使用集合选择助手。你是什​​么意思“这些下降将命名为单位[]”?如果你告诉我们你这个表单的最终目标可能会有所帮助,因为Rails通常只为你处理一些东西。利用它的魔力。

此外,如果您是Rails初学者,强烈建议您查看Ryan Bates在复杂表单上的截屏视频。这是第1部分的链接: http://railscasts.com/episodes/73-complex-forms-part-1