我对 mongodb/mongoid 非常陌生,并且想知道构建一个使用户能够审查产品的系统的最佳方法。User 和 Product 将是单独的集合。但是他们都需要访问 Review 模型来显示他们在用户和产品页面上所做的评论。我应该使用嵌入的 1(用户)- 1(评论)关系创建链接的 1(产品)-N(评论)关系吗?这是正确的方法吗?
用户模型
class User
include Mongoid::Document
field :name, type: String
field :email, type: String
embeds_many :reviews, cascade_callbacks: true
end
产品型号
class Product
include Mongoid::Document
field :name, type: String
field :price, type: Float
has_many :reviews, dependent: :destroy
end
审查模型
class Review
include Mongoid::Document
field :rating, type: Integer
belongs_to :product
embedded_in :user
end
谢谢