我有'用户'表,'群组'表和'邀请'表(联接表)。我试图建立'邀请者'(class_name'用户'),'被邀请者'(class_name'用户')和'组'(class_name'组'')之间的关系,其中'邀请'(class_name'邀请')是连接带有外键'invitor_id','invitee_id'和'group_id'的表。
(许多'邀请者'可以向许多'受邀者'发出'邀请'以加入许多'群组')
我通过在我的Model类中显式指定:foreign_key和:class_name尝试了几种方法,但是徒劳无功。我刚开始学习rails中的'activerecord relations'概念,我真的想有效地使用它。有人可以帮我解决这个问题。
答案 0 :(得分:0)
您在ActiveRecord
条款中尝试解决的问题是“自我引用”关联。 Ryan Bates提供了一个很好的例子,几乎可以完全回答你的情况:
http://railscasts.com/episodes/163-self-referential-association
在他的示例中,您可以将“Friendship
”替换为“Invitation
”。您需要在其友情模型中添加group_id
,以跟踪与Group
相关的Invitation
。