0
Talk
,Topic
およびConference
の3つのモデルがあります。 それぞれタイトルと説明があります。 Conference
には多くの話があるTopics
とTopic
が多数あります。私はTalk
がConference
内で一意のタイトルを持っていることを検証するにはどうすればよいスコープ付きフィールドの一意性を確認する:関連付け
class Conference < ApplicationRecord
has_many :topics
has_many :talks, through: topics
end
class Topic < ApplicationRecord
belongs_to :conference
has_many :talks
end
class Talk < ApplicationRecord
belongs_to :topic
belongs_to :conference, through: :topic
end
?
私が考え出すことができる唯一の解決策は、Talk
- Topic
アソシエーションの別のテーブルを作成し、そこで検証を実行することです。しかし、これは新しいテーブルを作成せずに達成できますか?