我的用户模型有以下几行:
has_many :social_ids
has_many :friend_ids, :class_name => "SocialId"
我的SocialId模型有:
belongs_to :user
这允许我做
之类的事情user1.social_ids<< social_id1 user2.social_ids<< social_id2 user1.friend_ids<< social_id2
然而,我没有意识到(我的错误)现在social_id1和social_id2都有user1作为他们的用户。
这显然是错误的,但在这种情况下我无法弄清楚如何正确地连接属于。
belongs_to :friend_user, :class_name => 'User', :foreign_key => 'friend_user_id'
看起来不对......如何知道进入用户的friend_ids部分而不是社交ID?
我刚刚完全糊涂了吗?
编辑:
我认为我至少有些困惑。社交ID不应该BELONG_TO给朋友,它应该是HABTM关系(单个社交ID可以是多个用户的朋友,每个用户都有多个social_id朋友)