您能否帮助您了解如何将商品添加到购物车。 Rails Agile解释了如何通过line_items将产品添加到购物车。 假设我的网站提供旅游套餐,豪华轿车服务,公寓房,其他一些优惠。 客户增加豪华轿车,旅游套餐,购物车和支付。 它们是不同型号的型号包,型号豪华轿车,型号公寓等型号。如果是这样,当我通过line_items(cart_id,product_id)添加到购物车时,我无法弄清楚如何添加其他模型。或者我应该将所有型号链接到产品型号吗? 提前致谢
答案 0 :(得分:0)
您可能不需要为每种产品类型使用不同的型号。您可以将产品分解为不同的类别。所以你只需要一个额外的模型 - 一个分类模型。每个产品都属于一个类别(类别将有许多产品)。在数据库中,每个产品都有一个category_id。
像这样:
class Product < ActiveRecord::Base
belongs_to :category
....
class Category < ActiveRecord::Base
has_many :products
...
答案 1 :(得分:0)
你提到模型太不同了(在属性方面)。因此,单表继承可能不是您想要的。在这种情况下,使用polymorphic association来实现此目的。
class LineItem < ActiveRecord::Base
belongs_to :purchasable, :polymorphic => true
end
class Tour < ActiveRecord::Base
has_many :line_items, :as => :purchasable
end
class LimoService < ActiveRecord::Base
has_many :line_items, :as => :purchasable
end