Sql 修改查询中的Ransack not_以在字段为nil时包含

Sql 修改查询中的Ransack not_以在字段为nil时包含,sql,ruby-on-rails,arel,ransack,Sql,Ruby On Rails,Arel,Ransack,我正在查询我的模型,如下所示: MyModel.search(年份不在[2000、2010、2015]) 但是我从MyModel返回的结果仅限于year不是nil的情况。例如,查询在MyModel.year=1999处命中,但在MyModel.year=nil处不命中。我希望nil不在该数组中,但在SQL中可能就是这样定义的 有没有一种方法可以在ransacker中覆盖year或year\u not\u来添加上述条件?我能够在不覆盖的情况下解决这个问题,尽管我仍然对如何做感兴趣。加入这样的声明是

我正在查询我的模型,如下所示:

MyModel.search(年份不在[2000、2010、2015])

但是我从
MyModel
返回的结果仅限于
year
不是
nil
的情况。例如,查询在
MyModel.year=1999
处命中,但在
MyModel.year=nil
处不命中。我希望
nil
不在该数组中,但在SQL中可能就是这样定义的


有没有一种方法可以在ransacker中覆盖
year
year\u not\u来添加上述条件?

我能够在不覆盖的情况下解决这个问题,尽管我仍然对如何做感兴趣。加入这样的声明是我的解决方案:

.search(m:'or',year\u not\u in:[2000,2010,2015],year\u null:true)