0

1º ユーザーのジョンは多くのギフトを持っています

user.rb

class User
  include Mongoid::Document
  has_many :gifts, dependent: :destroy, :autosave => true
  has_many :orders, dependent: :destroy, :autosave => true
 end

ギフト.rb

 class Gift
      include Mongoid::Document
      belongs_to :user
      has_many :orders ,dependent: :destroy, :autosave => true
     end

2º ユーザーAnthonyがJohnへのギフトを購入し、新しい注文を作成する

class Order
   include Mongoid::Document
   belongs_to :gift
   belongs_to :user
  end

ここで、ユーザー Anthony は、自分が行ったすべての売上にアクセスしたいと考えています。

ここでの課題は、ユーザーが買い手と売り手の 2 つの役割を持つ可能性があることです。

Antonio が自分の売り上げにアクセスできるモデル間の関係をどのように構築すればよいですか?

4

1 に答える 1

2

モデル構造

class User
  include Mongoid::Document

  has_many :gifts, dependent: :destroy, :autosave => true
  has_many :orders, dependent: :destroy, :autosave => true
end

class Gift
  include Mongoid::Document

  belongs_to :user
  belongs_to :gifted_to, :class_name => 'User'

  has_one :order ,dependent: :destroy, :autosave => true
end

class Order
  include Mongoid::Document

  belongs_to :gift
  # below associtation is just for quicker ref 
  # otherwise you can have access to it via gift also
  belongs_to :user
end
于 2012-08-14T11:19:56.780 に答える