如何在两个模型之间找到匹配的has_and_belongs_to_many关联

时间:2011-02-25 05:02:59

标签: ruby-on-rails ruby sqlite associations

假设我有两个模型:Debater和Team。

团队has_and_belongs_to_many辩手,反之亦然。

我希望能够从Team类中查询以找到对两个指定的辩手进行讨论的团队。

我还希望能够从Debater课程中查询辩论者是否有一个具有指定辩手的团队。

提前致谢!

1 个答案:

答案 0 :(得分:0)

使用@team.debaters,您可以获得该团队的所有辩手。另一种方法是让所有团队成为@debater.teams的辩论者。现在,如果您希望获得两名辩手的所有团队,您可以Team.where("debater_id == #{id1} OR debater_id == #{id2}")

对于你的最后一点(来自Debater课程的uery,以确定辩论者是否有一个具有指定辩手的团队)你可以尝试以下@debater.teams.where(:debater_id => DEBATER_ID)

希望这有帮助!