我有一个名为“论坛”的收藏集。
我想按“ forum_order”以升序排序,然后更新按“ forum_order”排序的整个集合。
我尝试了以下操作:
Forum.findByIdAndUpdate({}).sort({forum_order: 1}).exec(function(err, updatedTasks) { if (err) { console.log(err); } });
但是没有用。
如果成功,则图像中的“第一论坛”应位于“第三论坛”上方,以使第一论坛成为此“论坛”集合中的第一对象。
我该如何解决?我是mongodb的新手...
答案 0 :(得分:1)
在mongo中,这实际上没有什么意义:无法更新将文档退还给您的默认顺序。如果您不指定排序,则它们会以mongo容易的顺序返回。
相反,在find
文档db.forums.find({}).sort({forum_order: 1});
时应指定排序顺序。如果您有很多论坛,则不妨在forum_order
上添加索引。