Rails has_many:通过

Rails has_many:通过

问题描述:

我正在尝试在rails中创建一个销售点应用程序Rails has_many:通过

现在我有一个项目模型。商品模型包含商店携带的每个不同商品。

现在我想创建订单模型。这个想法是,这个模型将包含每个订单的项目和数量。我将能够查看订单的历史记录以生成分析等。

什么是正确的方法?

has_many:through? Redis集? 其他想法?

典型的方法是使用OrderLine模型。这是您要存储每个订购项目数量的地方。

class Order 
    has_many :order_lines 
    has_many :items, :through => :order_lines 
end 

class OrderLine 
    belongs_to :order 
    belongs_to :item 
end 
+0

你能详细解释一下吗? – Alex

+0

谢谢。我需要在订单行上使用迁移和/或attr_accessible变量吗? – Alex

+0

您需要迁移才能创建OrderLine模型。请注意,它应该在Order类的单独文件中,为了方便起见,我只是将它们组合在一起。至于attr_accessible,它取决于你如何编写控制器代码。 –