Mongoose模式字段在MongoDB中是反向sorting的
只是想知道为什么在MongoDB GUI中查看的字段与在Mongoose中的schema的定义相比较?
这是架构:
这里是插入function:
这就是我在Robomongo看到的:
我的问题是为什么字段的sorting方式与我在schema中定义的方式相比?
两件事情:
-
当你在Javascript中使用对象的时候,如果你使用类似于Array(或者Map / Set / TypedArray等)的东西,你不能保证访问顺序或者持续的顺序。 所以当你在Mongoose中把这个configuration对象作为一个模式传递时,我的猜测是它不会将它转换成有序数组,并且可能保持它的对象forms。 为了追踪到底是怎么回事,你需要先看看源代码,然后是mongodb驱动程序模块,然后(如果答案仍然不存在),可以查看MongoDB如何存储事物以及什么types的数据它在内部使用的结构。 我猜是顺序不保证:)
-
RoboMongo是一个GUI,所以它显示数据的方式不一定与mongodb所保存的数据的顺序相同 – 它可能是为了更容易阅读而分类的。
这有帮助吗?
- 附加更多的属性,从NodeJS(快速)+ MongoDB检索结果 – 模拟SQL连接
- mongoosesorting和search文件由填充字段
- MongoDB:聚合$项目采取数组当前项目
- NodeJS – 如何发送一个variables嵌套callback? (MongoDB查找查询)
- 如何在NodeJS中设置MongoDB进行集成testing?
- MongoDB和NodeJS中的敏感数据分离 – 通过encryption密钥引用
- mongoose更新成一个数组
- 我们如何删除引用节点js mongodb中的空错误
- node.js mongodb – collection.find()。toArray(callback)返回空