我正在尝试使用activerecord查找rails中具有has_many关系的记录。我正在努力解决这个问题,但这是我想要找到的:
has_many :var, :through => :line
上面的代码行包含在模型中。我想返回具有某个与之关联的var的记录。因此,例如,如果:var = 1234,我想返回与之关联的所有记录。
答案 0 :(得分:1)
假设您的主要类名为Order
,line
是Order的belongs_to关系,vars
是Line的has_many关系,您正在搜索Var id
Order.joins(line: :vars).where('"vars"."id" = ?', 1234).uniq
答案 1 :(得分:0)
根据你的评论,我相信你需要这样的东西
Order.where(:var => 1234)
或者如果你喜欢普通的sql
Order.where('var = 1234')
Activerecord有很多关于此的文档,例如here