我想知道如何在浏览器中列出Meteor应用程序的所有集合。
基本上,我需要使用未记录的DDP连接到某个主机,并且需要知道所有集合名称。
我已经尝试了Meteor.collections
,Meteor.default_connection.collections
之类的内容,但这些内容都不起作用。有什么建议吗?
答案 0 :(得分:4)
<connection>._mongo_livedata_collections
访问,其密钥是集合的名称。
_.keys(Meteor.connection._mongo_livedata_collections)
DDP连接本身在名为_stores
的对象中管理其存储,可以通过以下方式进行类似访问:
_.keys(Meteor.connection._stores)
但是,此API是私有的且未记录,并且将来可能会更改。更简洁的方法是使用提供此类功能的包:dburles:mongo-collection-instances。
然后,使用Mongo.Collection.getAll()
获取所有集合的描述,其中包括其名称。