在浏览器控制台中查看所有集合

Sun*_*Cho 3 meteor ddp

我想知道如何在浏览器中列出Meteor应用程序的所有集合。

基本上,我需要使用到某个主机的未记录的DDP连接,并且需要知道所有集合名称。

我已经尝试过类似的东西Meteor.collectionsMeteor.default_connection.collections但是它们都不起作用。有什么建议么?

Mas*_*rAM 5

每当创建集合时,Mongo的local_collection_driver都会在DDP上更新连接的对象。可以通过访问它<connection>._mongo_livedata_collections,它的键是集合的名称。

_.keys(Meteor.connection._mongo_livedata_collections)

DDP连接本身在称为的对象中管理其存储_stores,并且可以通过以下方式类似地进行访问:

_.keys(Meteor.connection._stores)

但是,此API是私有的且未记录在文档中,并且将来可能会更改。较干净的方法是使用提供以下功能的软件包:dburles:mongo-collection-instances

然后,使用Mongo.Collection.getAll()获取所有集合的描述,包括它们的名称。