Ruby on rails 轨道&x2B;MongoDB:查找大于给定值的ObjectId
我正在MongoDB中查找下一个(最新)文档:Ruby on rails 轨道&x2B;MongoDB:查找大于给定值的ObjectId,ruby-on-rails,ruby,mongodb,objectid,Ruby On Rails,Ruby,Mongodb,Objectid,我正在MongoDB中查找下一个(最新)文档: Article.find({'_id' => { "$gt" => Moped::BSON::ObjectId(id_from_database)}}) 但是每次我运行这个查询,我都会 Problem: Document(s) not found for class Article with id(s) {"_id"=>{"$gt"=>"given value"}}. 我已经安装了这些gems: gem 'mongo
Article.find({'_id' => { "$gt" => Moped::BSON::ObjectId(id_from_database)}})
但是每次我运行这个查询,我都会
Problem:
Document(s) not found for class Article with id(s) {"_id"=>{"$gt"=>"given value"}}.
我已经安装了这些gems:
gem 'mongoid'
gem 'bson'
gem 'bson_ext'
但还是找不到问题。。。我将感谢每一次帮助
谢谢你我想你应该调用
where
,而不是find
,它用于通过特定id获取记录
Article.where({'_id' => { "$gt" => Moped::BSON::ObjectId(id_from_database)}}).sort(_id: 1).first
下面将返回下一个对象
Article.where({:_id => {:$gt => id_from_database}}).sort({:_id=>1}).first
但在这种情况下,我会收到以下错误消息:
未定义的方法“id”用于#
,您需要添加。首先在该方法的末尾添加,然后按\u id
排序。我会更新答案。