我有一个用户模型,用户有很多宠物.我希望能够编写一个ActiveRecord查询,在那里我可以 Select 所有有宠物但没有宠物的用户."毛茸茸"的名字
用ActiveRecord写这篇文章最有效的方法是什么?使用直截了当的SQL,它会显示如下内容:
select id from users INNER JOIN pets ON u.id = pets.user_id WHERE pets.name != "fluffy"
我有一个用户模型,用户有很多宠物.我希望能够编写一个ActiveRecord查询,在那里我可以 Select 所有有宠物但没有宠物的用户."毛茸茸"的名字
用ActiveRecord写这篇文章最有效的方法是什么?使用直截了当的SQL,它会显示如下内容:
select id from users INNER JOIN pets ON u.id = pets.user_id WHERE pets.name != "fluffy"
这应该是有效的:
User.joins(:pets).where("pets.name != 'fluffy'")
此外,你可能还想阅读官方RoR指南上的following part(第joins
页).