Ruby on rails 不是简单的购物车需要专家解答

Ruby on rails 不是简单的购物车需要专家解答,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我很惊讶我的问题得到-1分。它们不是简单的,而是复杂的。 我的行\u项目表具有产品\u id购物车\u id订单\u id 每当客户点击产品时,它就会被添加到购物车中。 但我的公寓、汽车、旅游套餐都不是产品。无论谁认为我能以某种方式连接到我的汽车、公寓的产品,请告诉我。它们具有根本不同的属性。当客户点击公寓并选择两居室时,让我们说说我如何将我的公寓id、汽车id或旅游id添加到行项目中。我不需要关于STI或多重继承的理论。我需要确切的答案。感谢rails专家。首先,您应该将您的问题格式化为关于

我很惊讶我的问题得到-1分。它们不是简单的,而是复杂的。
我的行\u项目表具有产品\u id购物车\u id订单\u id 每当客户点击产品时,它就会被添加到购物车中。
但我的公寓、汽车、旅游套餐都不是产品。无论谁认为我能以某种方式连接到我的汽车、公寓的产品,请告诉我。它们具有根本不同的属性。当客户点击公寓并选择两居室时,让我们说说我如何将我的公寓id、汽车id或旅游id添加到行项目中。我不需要关于STI或多重继承的理论。我需要确切的答案。感谢rails专家。

首先,您应该将您的问题格式化为关于
的指导原则,这可能是因为您获得了否决票

不管怎样,我想你在找我

假设
Product
是指您的商店中提供的产品,并且
LineItem
表示订单中的产品:

class LineItem < ActiveRecord::Base
  has_one :product  # ONE LineItem references ONE product in the shop
  belongs_to :cart  # respectively belongs_to :order
end

class Cart < ActiveRecord::Base
  has_many :line_items  # ONE Cart HAS MANY LineItems
end

class Product < ActiveRecord::Base
  belongs_to :buyable, :polymorphic => true

  # here you would have general attributes representing a product, e.g. 'name'
end

class Car < ActiveRecord::Base
  has_one :product, :as => :buyable

  # here you would have specific attributes in addition to the general attributes in
  # product, e.g. 'brand'
end

class Apartment < ActiveRecord::Base
  has_one :product, :as => :buyable

  # here you would have specific attributes in addition to the general attributes in
  # product, e.g. 'address'
end

否决票很可能是因为你没有尽全力去问一个在座的任何人都能理解并回答的问题。看看其他问题,你会看到人们给出了很多细节,特别是例子,并展示了他们的尝试。问题越难,需要的细节就越多。如果你看上面的问题,你会注意到它假设我们对你要做的事情有很多了解——没有上下文。写一个独立的问题(编辑这个!),你很可能会得到答案。
@product = Product.find(params[:id])

if @product.buyable.is_a? Car
  puts @product.buyable.brand
elsif @product.buyable.is_a? Apartment
  puts @product.buyable.address
end