如何在连接数据的位置使用AREL eq()方法

时间:2013-04-02 17:40:42

标签: ruby-on-rails activerecord arel

我目前有这个范围:

class User

  has_many :inbox_messages, :through => :message_users do
    def unread
      published.where(:message_users => { :sender => false, :trash => false , :deleted => false}).where(MessageUser.arel_table[:read_at].not_eq(nil))
    end

  end
end

它正在发挥作用。但我想知道是否有办法将第二个where合并到第一个。{/ p>

1 个答案:

答案 0 :(得分:3)

如果我正确理解您的代码,您应该可以使用

执行此操作
published.where(:message_users => { :sender => false, :trash => false , :deleted => false, :read_at => nil })