0
如果我有一個模型,即。用戶和每個用戶has_many:動物,我如何獲取一組特定用戶動物的列表?得到模特的孩子
我想要做這樣的事情:
a = User.where(:last_name => 'Statham').animals
,有一個是動物對象的列表。我假設我錯過了一些簡單而瑣碎的事情。
如果我有一個模型,即。用戶和每個用戶has_many:動物,我如何獲取一組特定用戶動物的列表?得到模特的孩子
我想要做這樣的事情:
a = User.where(:last_name => 'Statham').animals
,有一個是動物對象的列表。我假設我錯過了一些簡單而瑣碎的事情。
是的,簡單是正確的。你在那裏得到了很多用戶,所以你需要遍歷它們。
stathams = User.where(:last_name => 'Statham')
stathams.each { |statham| statham.animals }
如果你想避免重複:
animals = []
stathams = User.where(:last_name => 'Statham')
stathams.each { |statham| animals << statham.animals }
animals.uniq!
試試這個:
Animal.where(user_id: User.where(last_name: "Statham"))
我得到的是,第一個用戶 - 但如果我想所有的動物屬於到一些用戶? IE瀏覽器。我想要列出屬於名字爲'John'的用戶的動物列表。 – opticon
查看更新的答案。 –