Rails - 多个父母的孩子

时间:2012-05-20 00:26:06

标签: ruby-on-rails ruby-on-rails-3

如果我有两个模型 - parentchild,以及父母has_many孩子,并且我有一系列父母并想要为所有这些父母检索所有孩子,那么是否有我可以在Rails中执行此操作而无需手动编写SQL语句吗?

这就是我想要做的事情:

@parents = Parent.where("[various conditions]")
@children = @parents.children

1 个答案:

答案 0 :(得分:6)

Child.where(:parent_id => @parents.pluck(:id))

@parent_ids = Parent.where("[various conditions]").pluck(:id)
Child.where(:parent_id => @parent_ids}

或者你可以使用join

Child.join(:parent).merge(Parent.where("[various conditions]")) #!!readonly