如何使用Node.js检查MongoDB中是否存在集合?
基本上,我想根据集合是否存在来隐藏div。有人知道最简单的方法吗?我将Mongoose和Express.js与Jade一起使用。您可以使用如何使用Node.js检查MongoDB中是否存在集合?,node.js,mongodb,express,mongoose,pug,Node.js,Mongodb,Express,Mongoose,Pug,基本上,我想根据集合是否存在来隐藏div。有人知道最简单的方法吗?我将Mongoose和Express.js与Jade一起使用。您可以使用 db.system.namespaces.find( { name: dbName +'.' + collectionName } ); 它包含集合和索引项,对于现有集合,它应返回如下内容: { "name" : "temp333.categories" } 要从mongoose执行此操作,您可以定义system.namespaces模型和查询。如果您
db.system.namespaces.find( { name: dbName +'.' + collectionName } );
它包含集合和索引项,对于现有集合,它应返回如下内容:
{ "name" : "temp333.categories" }
要从mongoose执行此操作,您可以定义system.namespaces模型和查询。如果您想通过node.js本机api直接访问mongodb,可以使用db.collectionNames(): 列出现有收藏 列名 集合可以与CollectionName一起列出 db.collectionNames(回调) 回调获取两个参数-一个错误对象(如果发生错误)和 作为字符串的集合名称数组 集合名称还包括数据库名称,因此 数据库博客中的帖子将作为blog.posts列出 此外,还存在不应更改的系统集合 在不知道你在做什么的情况下,这些选择可能会 用系统前缀标识。例如posts.system.index 例如:
问题已在此处得到解答:希望此帮助此迁移后不再存在此方法:
var MongoClient = require('mongodb').MongoClient , format = require('util').format;
MongoClient.connect('mongodb://127.0.0.1:27017/test', function(err, db) {
if(err) throw err;
db.collectionNames(function(err, collections){
console.log(collections);
});
});