Mongoose 模式字段在 MongoDB 中反向排序
Mongoose schema fields are reverse ordered in MongoDB
只是想知道为什么在 MongoDB GUI 中查看的字段与 Mongoose 中的模式定义相比是倒退的?
架构如下:
这是插入函数:
这是我在 Robomongo 中看到的内容:
我的问题是,与我在模式中定义字段的方式相比,为什么字段的排序方式倒退?
两件事:
当您使用 Javascript 中的对象时,您无法像使用数组(或 Map/Set/TypedArray 等)。因此,当您在 Mongoose 中将该配置对象作为模式传递时,我的猜测是它 不会 将其转换为某个有序数组,并可能将其保留为对象形式。要确切地了解它是如何进行的,您需要查看源代码,然后是 mongodb 驱动程序模块,然后(如果答案仍然不存在)可能会查看 MongoDB 存储东西以及它在内部使用什么样的数据结构。我猜订单 不是 保证:)
RoboMongo 是一个 GUI,因此它显示数据的方式不一定与 mongodb 保存的数据的顺序相同——很可能是为了便于阅读而排序的.
有帮助吗?
只是想知道为什么在 MongoDB GUI 中查看的字段与 Mongoose 中的模式定义相比是倒退的?
架构如下:
这是插入函数:
这是我在 Robomongo 中看到的内容:
我的问题是,与我在模式中定义字段的方式相比,为什么字段的排序方式倒退?
两件事:
当您使用 Javascript 中的对象时,您无法像使用数组(或 Map/Set/TypedArray 等)。因此,当您在 Mongoose 中将该配置对象作为模式传递时,我的猜测是它 不会 将其转换为某个有序数组,并可能将其保留为对象形式。要确切地了解它是如何进行的,您需要查看源代码,然后是 mongodb 驱动程序模块,然后(如果答案仍然不存在)可能会查看 MongoDB 存储东西以及它在内部使用什么样的数据结构。我猜订单 不是 保证:)
RoboMongo 是一个 GUI,因此它显示数据的方式不一定与 mongodb 保存的数据的顺序相同——很可能是为了便于阅读而排序的.
有帮助吗?