1
比方说,你有能以不同的方式相关联的两种模式:多个has_many关联
用户有他们创造了多次交谈。 (一对多) 用户有很多涉及他们的谈话。 (多对多)
我的第一个想法是将在会话表中创建会话的用户的ID存储在会话表中,并将会话中涉及的用户关联到联接表中。
class User < ActiveRecord::Base
has_many :conversations
has_and_belongs_to_many :conversations
end
class Conversation < ActiveRecord::Base
belongs_to :user
has_and_belongs_to_many :users
end
虽然这似乎是要求麻烦。
什么是正确的方法来做到这一点? 基本上我希望能够为那些涉及user.conversations和user.started_conversations的用户启动。
谢谢。