ActiveRecord查找中的操作顺序

时间:2015-07-07 03:14:13

标签: ruby-on-rails postgresql activerecord

 Approval.where("user1_approval IS NOT NULL AND user2_approval IS NOT NULL AND (user_id = ? OR approved_id = ?)", user.id, user.id)

我希望括号中的部分起作用 - 这些声明中的任何一个。目前,当我运行此查询时,我在括号中出现错误。

如何进行此查询?

1 个答案:

答案 0 :(得分:0)

你介意像这样使用ActiveRecord查询吗?

 Approval.where.not(user1_approval:nil).where.not(user2_approval: nil).where("summoner_id = ? OR approved_id = ?", user.id, user.id)

它可能会减少编写纯SQL的潜在问题。