这里的Rails新手。假设我有两个表,Owners(owner_id,name)和Cats(cat_id,cname)。它们通过一对多的关系联系在一起,所有者可以拥有许多猫,但猫只能拥有一个所有者。给定owner_id的输入,我想检索该所有者拥有的每只猫的猫名称和id,并将其存储为哈希数组(即[{:cat_id => 1,cname =>“cat1”} ,{:cat_id => 2,cname =“cat2”}]。
到目前为止,我有类似output = [Owner.find(owner_id).join(:Cats)]但我不确定如何完成该语句。非常感谢你。
答案 0 :(得分:1)
Owner.find(owner_id).cats会给你你想要的东西。
答案 1 :(得分:1)
试试这个:
Cat.all(:conditions => ['owner_id = ?', owner_id])
或者:
Owner.find(owner_id).cats
假设您的所有者模型中有has_many :cats
。如果您需要哈希列表而不是活动记录对象,则可以使用.collect转换您的设置。