Has_many通过形式

时间:2014-05-04 02:23:36

标签: ruby forms ruby-on-rails-4 has-many-through has-and-belongs-to-many

我希望能帮助构建一个has_many表单:通过关系。

我有三个班级:

order.rb

has_many :selections
has_many :items, :through =>:selections;

item.rb的

has_many :selections
has_many :orders, :through => :selections

selection.rb

belongs_to :order
belongs_to :item

选择具有额外属性以捕获所选项目的数量。

我要做的是创建一个表单,允许用户选中一个框,指出他们想要的项目类型并提供数量。

_X_ Food1 _6_
___ Food2 __
_X_ Food3 _1_

我的问题是我不知道如何命名表单元素,以便它们进入控制器。我不能用

<%= collection_check_boxes(:order, :item_ids, @course.items.all, :id, :name, {:item_wrapper_class => 'checkbox_container'}) %>

因为那只会打印带有复选框的食物,我需要捕获每个所选项目的数量。

我可以使用的帮助是如何创建_form.html.erb以及我可能需要在控制器中使用的特殊问题。

1 个答案:

答案 0 :(得分:0)

首先,item.rb应该读取,

has_many :selections
has_many :orders, :through => :selections

其次,为什么使用复选框?为什么不只是形式,如果空默认为零或零?也就是说,如果您有多个,您可以将其用作真值,而不是检查是否支票。