基本的には、Netflix の DVD レンタル モデルと同様の関係を構築したいと考えています。
ユーザーがいて、各ユーザーにはキューがあり、各キューには多くの DVD が含まれており、DVD には多くのキューを含めることができます。キューはユーザーに属します。
これをアクティブなレコードに設定する方法がよくわかりません。おそらくキューとユーザーは has_many :through 関係であるべきだと思いましたが、それはあまり意味がありません。
どんな助けでも大歓迎です!
基本的には、Netflix の DVD レンタル モデルと同様の関係を構築したいと考えています。
ユーザーがいて、各ユーザーにはキューがあり、各キューには多くの DVD が含まれており、DVD には多くのキューを含めることができます。キューはユーザーに属します。
これをアクティブなレコードに設定する方法がよくわかりません。おそらくキューとユーザーは has_many :through 関係であるべきだと思いましたが、それはあまり意味がありません。
どんな助けでも大歓迎です!
class User < ActiveRecord::Base
has_many :queues
end
class Queue < ActiveRecord::Base
belongs_to :user
has_many :dvd_queues
has_many :dvds, through: :dvd_queues
end
class Dvd < ActiveRecord::Base
has_many :dvd_queues
has_many :queues, through: :dvd_queues
end
class DvdQueue < ActiveRecord::Base
belongs_to :dvd
belongs_to :queue
end
&間の関連付けのhas_many
代わりに使用する利点は、 、 などのフィールドを に追加できることです。has_and_belongs_to_many
Dvd
Queue
priority
DvdQueue
ユーザーがキューに DVD を追加してキューを表示できるようにする場合、どのモデルにビューとコントローラーが必要か
通常、ユーザー、キュー、および Dvd に対応するコントローラーがあり、標準ルートにマップされた CRUD アクションを提供し、インデックス、新規および編集アクションのビューを備えています。