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
你能详细解释一下吗? – Alex
谢谢。我需要在订单行上使用迁移和/或attr_accessible变量吗? – Alex
您需要迁移才能创建OrderLine模型。请注意,它应该在Order类的单独文件中,为了方便起见,我只是将它们组合在一起。至于attr_accessible,它取决于你如何编写控制器代码。 –