私はmongodbとmongoidgemを使用していますが、アドバイスをお願いします。
私はユーザーhas many
マーケットとマーケットhas many
製品を扱うアプリを持っています。ユーザーが所有するすべての(または任意の)市場で、たとえば特定の価格帯で製品を検索する必要があります。
埋め込まれた関係と参照された関係のどちらがこれに適していますか?
私は現在参照を使用していますが、そのように見えます
class User
has_many :markets
end
class Market
belongs_to :user
has_many :products
end
class Product
belongs_to :calendar
belongs_to :user
end
そして検索には、このクエリを使用します
Product.where(user_id: current_user.id).
in(market_id: marked_ids).
where(:price.gte => price)
mongdbはドキュメント指向のデータベースなので、このような状況で埋め込みドキュメントを使用した場合、パフォーマンスやデザインにメリットがありますか?