下拉菜单中包含来自其他模型的值

时间:2011-02-16 17:32:23

标签: ruby-on-rails drop-down-menu foreign-keys

我有属于收藏品的产品。集合只是一个名称。产品有collection_id。

在用于创建和编辑产品的_form视图中,我想要一个带有所有集合名称的下拉菜单。

问题,似乎没有附加到form.for的select方法,我正在尝试使用:

  

选择(方法,选项,选项= {},   html_options = {})

从文档

但我不明白。我必须写一个方法来创建一个表单?有哪些选择,有两种选择?两个参数应足以填充<选项>  标签

我如何有一个下拉菜单,让我通过集合名称将一个集合分配给我的产品?

1 个答案:

答案 0 :(得分:21)

您可以使用集合选择,首先确保您的模型已正确设置:

class Product
  belongs_to :collection
end

class Collection
  has_many :products
end

然后将集合选择添加到您的视图中:

<%= collection_select(:product, :collection_id, Collection.all, :id, :name) %>

您还可以阅读文档here