0
我有这些模型:fields_for和has_many_through
class Order < ActiveRecord::Base
has_many :order_lines
has_many :prizes, :through => :order_lines
accepts_nested_attributes_for :order_lines
end
class Prize < ActiveRecord::Base
has_many :order_lines
end
class OrderLine < ActiveRecord::Base
belongs_to :order
belongs_to :prize
end
我想在订单的嵌套形式显示与文本框所有的奖旁边用户可以在其中输入件(如量订购)。当提交表单时,创建操作应相应地创建order_lines。我无法在任何地方找到解决方案。
感谢您的回复。这样做时,fields_for不会遍历奖品。块中的代码根本不运行。 – jriff 2012-03-20 11:24:58
代码正常运行,但可能不会显示任何内容,因为订单没有任何奖励。如果您想在订单表单中编辑和实例化奖品,您应该在控制器中添加@ order.prizes.build。查看[此链接](http://railscasts.com/episodes/196-nested-model-form-part-1)以获取更多信息 – shuriu 2012-03-20 12:18:55
如果我执行@ order.prizes.build,我所得到的只有一个空奖实例在块中。链接到RailsCasts只适用于我有一对多关联。这里情况不同 :-( – jriff 2012-03-20 12:26:00