0

例如,如果我们考虑两个模型,产品和品牌,我应该为每个模型中的每个关联文档的 id 声明一个字段吗?

class Product
  include Mongoid::Document

  field :name, :type => String
  field :brand_id, :type => Moped::BSON::ObjectId

  validates :name, presence: true
  validates :brand_id, presence: true

  belongs_to :brand
end

--

class Brand
  include Mongoid::Document
  field :name, :type => String
  field :description, :type => String
  field :product_id, :type => Moped::BSON::ObjectId

  validates :name, presence: true, uniqueness: true
  validates :product_id, presence:true

  has_many :products
end

无论模型是否声明它们存在,这些字段brand_idproduct_id都是自动创建的,因此无论是否包含它们,代码都可以正常工作。我只是好奇这种事情的标准做法是什么。

4

1 回答 1

0

我觉得有什么不对...

在 Brand 类中,如果存在 *has_many* 关系,则不应使用“product_id”。

类产品还可以。

于 2013-07-10T07:07:03.933 回答