活动记录嵌套关联

时间:2018-06-13 06:13:12

标签: sql ruby-on-rails activerecord associations

我希望得到一个协会:

Person > has_many :animals > has_many (through animals) :dogs 
       > belongs_to :leash > belongs_to :collar

我想获得所有可能的:collar选项,以便检查特定collar_id是否有Person

要检查:leash的实例,我确实这样做(personPerson的实例):

person.dogs.where(leash_id: id_of_leash)

但我现在需要更深层次地找到衣领ID是否在这个特定的人物中找到。

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

  

person.dogs.includes(leash :: collar).where(" collar.attribute =?",condition)

答案 1 :(得分:0)

我不确定将查询与迭代器混合在一起是不错的做法,但我发现这可以工作并清楚地阅读:

Store (visible) Approval Group (visible) Name (visible) Date (hidden, depends on Name) Status (hidden, depends on Date) WorkOrderSegment (hidden, depends on Date)