如何从猫鼬找到所有的集合

时间:2013-08-30 16:48:30

标签: mongodb mongoose

我应该找到存储在mongo数据库中的所有集合。

require('../app/models/schemas'); //loading application schemas
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
var collections = db.collections();
console.log(collections);

此处集合打印所有模式的组合'json'数据。

但我想找到存储在mongo测试数据库中的所有集合。 如何用猫鼬实现它?

2 个答案:

答案 0 :(得分:9)

您可以使用collectionNames函数返回集合列表。

db.on('open', function(){
  mongoose.connection.db.collectionNames(function(error, names) {
    if (error) {
      throw new Error(error);
    } else {
      names.map(function(cname) {
        console.log(cname.name);
      });
    }
  });
});

=> database1.system.indexes
=> database1.users
=> database1.posts

答案 1 :(得分:-3)

确保mongodb在终端中启动并运行:

$ mongo

  

显示dbs

     

使用[db_name]

     

展示收藏品


如果你知道你的收藏品是:

$ mongo [db_name]

  

展示收藏品