2014-05-12 209 views

回答

2

如果你想通過node.js的原生API,你可以使用db.collectionNames()打的MongoDB直接:

列表現有集合

列表名稱

類別即可上市與collectionNames

db.collectionNames(回調);

回調有兩個參數 - 錯誤對象(如果發生錯誤)和 集合名稱作爲字符串的數組。

集合名稱還包括數據庫名,這樣的集合稱爲數據庫中的博客帖子 將被列爲blog.posts。

此外還有哪些不應該被改變 沒有確切知道系統收藏,你在做什麼,這些sollections可與系統前綴標識 。例如posts.system.indexes。

例子:

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); 
    }); 
}); 

http://mongodb.github.io/node-mongodb-native/markdown-docs/collections.html

+1

該方法不再存在,因爲此遷移:http://mongodb.github.io/node-mongodb-native/2.0/meta/changes-from-1.0/ –

1

你可以使用

db.system.namespaces.find({ name: dbName +'.' + collectionName }); 

它包含的條目集合和指標,對現有的集合,它應該返回是這樣的:

{ "name" : "temp333.categories" } 

從貓鼬你可以定義system.namespaces做模型和查詢。

相關問題