Node.js 如何获取Mongoose实例的所有模型的对象

Node.js 如何获取Mongoose实例的所有模型的对象,node.js,mongoose,Node.js,Mongoose,我知道它返回myModel模型。但是我怎样才能让Mongoose给我一个当前注册的所有模型的数组/对象/列表呢 我认为这在某种程度上是一个设计缺陷。到目前为止,有一个非正式的方法: 您可以通过mongoose.models访问所有模型的对象。 这看起来像: models: { myModel: { [Function: model] modelName: 'myModel', auth: [Function], model: [Function:

我知道它返回
myModel
模型。但是我怎样才能让Mongoose给我一个当前注册的所有模型的数组/对象/列表呢


我认为这在某种程度上是一个设计缺陷。

到目前为止,有一个非正式的方法:


您可以通过
mongoose.models
访问所有模型的对象。 这看起来像:

models:
  { myModel:
    { [Function: model]
      modelName: 'myModel',
      auth: [Function],
      model: [Function: model],
      options: undefined,
      db: [Object],
      schema: [Object],
      collection: [Object],
      base: [Circular] } },

在我看来,摆弄API私有内容是不好的,因此这是Mongoose的一个设计缺陷(请参阅)。

您可以使用以下方法获得所有现有模型的数组:

var mongoose = require('mongoose');
var models = mongoose.modelNames()