在rails中是否有belongs_to'有时'的概念?

时间:2011-07-11 21:04:13

标签: ruby-on-rails-3

我有一个应用程序,其中有产品和购物车。产品只有在添加到购物车后才属于购物车,然后购物车才会拥有产品。但是在将产品添加到购物车之前,它们只是一个没有关联的独立模型。如何在rails中捕获它?

我很困惑我是否应该将cart_id添加到Products表中,如果它们只在添加时才属于Cart?

2 个答案:

答案 0 :(得分:3)

提到的导轨指南绝对值得一看。它只涉及这个问题。

我想问题是:在您的情况下,“产品”类的单个实例代表什么?产品实例是商品的类型,还是该商品的物理实例?

前者可能更有意义。在这种情况下,Products表的各行将代表各种类型的产品 - 您可能不需要cart_id列。相反,您需要一个连接表,或者最好是另一个模型(订单)来表示客户购买单个产品的情况。

答案 1 :(得分:1)

我会创建一个LineItem模型belongs_to :cartbelongs_to :product。然后在购物车中你可以这样做:

has_many :products, :through => :line_items