Ruby on rails 尝试筛选ActiveRecord在Rails中有很多关联

Ruby on rails 尝试筛选ActiveRecord在Rails中有很多关联,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我有一个用户模型,它: 有许多消息,->{where('flag>?'),-99.order('posteddesc')} 我希望忽略任何标志值为-100的消息。排序(似乎)有效,但标志where子句无效 我是不是用错了,还是我想做些不可能的事?如果是这样,我该怎么做?-100不大于-99,它是1小于-99。要忽略-100的标志值,可以执行以下操作: where('flag != ?', -100) 您的声明将是: has_many :messages, -> { where('flag

我有一个用户模型,它:

有许多消息,->{where('flag>?'),-99.order('posteddesc')}

我希望忽略任何标志值为-100的消息。排序(似乎)有效,但标志where子句无效


我是不是用错了,还是我想做些不可能的事?如果是这样,我该怎么做?

-100
不大于
-99
,它是
1
小于
-99
。要忽略
-100
的标志值,可以执行以下操作:

where('flag != ?', -100)
您的
声明将是:

has_many :messages, -> { where('flag != ?', -100).order('posted desc') }

是的,没错-100小于-99-那么,如果我的作用域是flag>-99,为什么会出现flag=-100的消息?