嵌套查询布鲁斯...通过嵌套对象分组

问题描述:

我的Object有许多transactions属于type,然后属于group。我想从我的Object中抽取特定组中的所有交易,例如blue嵌套查询布鲁斯...通过嵌套对象分组

一直在尝试使用SQL和Activerecord来做到这一点,并且都在两次尝试中都失败了。

我能得到这个过程打印出来的质量由我,然后想排序:

object.transactions.map { |to| "#{to.transaction_type.transaction_group.name}" } 

这里是我已经运行的样本,但oviously这么想的工作。没有设法找到一个方法来

id = Group.find_by_name("name") 
object.transactions.where(transaction_type.group_id == id) 

你可以这样做:

id = Group.find_by_name("name") 
object.transactions. 
    joins(:type). 
    where("types.group_id" => id) 
+0

必须是'加入(:型)'或监守交易-belongs把它给我一个错误 - 类型和剂量 - 有很多类型 – ovatsug25

+0

尝试了这一点,它告诉我操作符不存在:'pv.transactions.joins(:transaction_type).where('transaction_types.transaction_group_id ==?',7)'@cheeseweasel – ovatsug25

+0

Got it! @cheeseweasel - 'object.transactions.joins(:type).where('types.group_id'=> id)' – ovatsug25