Mongo::Error::OperationFailure: $not needs a regex or a document in rails mongoid
Mongo::Error::OperationFailure: $not needs a regex or a document in rails mongoid
Rails 应用有 Moingoid 7.0.5
class Example
include Mongoid::Document
field :name, type: String
end
当我查询 Example.not(name: "xyz").count
时,我得到这个错误:
Mongo::Error::OperationFailure: $not needs a regex or a document (2)
(on localhost:27017, modern retry, attempt 1) (on localhost:27017,
modern retry, attempt 1)
Mongoid 文档确实说我们也可以这样使用 not
运算符。我确实得到了 Example.where(:name.ne => "xyz").count
.
的预期结果
配置中是否有什么导致了这个?
已发布的文档表明它适用于哪个版本(左上角)。当前 Mongoid 版本是 7.2,因此 https://docs.mongodb.com/mongoid/current/tutorials/mongoid-queries/#logical-operations 表明它适用于 7.2。您可以 select 从下拉列表中选择您正在使用的版本。
您询问的 not
行为按照 Mongoid 7.1 的当前文档中描述的方式工作。正如您所发现的,以前版本的 Mongoid 不能像当前描述的那样工作。
Rails 应用有 Moingoid 7.0.5
class Example
include Mongoid::Document
field :name, type: String
end
当我查询 Example.not(name: "xyz").count
时,我得到这个错误:
Mongo::Error::OperationFailure: $not needs a regex or a document (2) (on localhost:27017, modern retry, attempt 1) (on localhost:27017, modern retry, attempt 1)
Mongoid 文档确实说我们也可以这样使用 not
运算符。我确实得到了 Example.where(:name.ne => "xyz").count
.
配置中是否有什么导致了这个?
已发布的文档表明它适用于哪个版本(左上角)。当前 Mongoid 版本是 7.2,因此 https://docs.mongodb.com/mongoid/current/tutorials/mongoid-queries/#logical-operations 表明它适用于 7.2。您可以 select 从下拉列表中选择您正在使用的版本。
您询问的 not
行为按照 Mongoid 7.1 的当前文档中描述的方式工作。正如您所发现的,以前版本的 Mongoid 不能像当前描述的那样工作。