Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Meteor dynamic MongoDB系列_Javascript_Node.js_Mongodb_Meteor - Fatal编程技术网

Javascript Meteor dynamic MongoDB系列

Javascript Meteor dynamic MongoDB系列,javascript,node.js,mongodb,meteor,Javascript,Node.js,Mongodb,Meteor,我们在MongoDB中有一些动态的集合,它们遵循类似“XX_YY”的模式,但也可能有数百个类似theese的集合 我们可以通过查询db.patterns集合中的模式来获得模式,但我不知道如何在db.patterns中找到这些模式,然后在MongoDB中查询我们想要的模式,MongoDB中的示例如下 var collections = db.patterns.find(); db.getCollection(collections[0]).find(); 如何在MeteorJS中实现这一点?您

我们在MongoDB中有一些动态的集合,它们遵循类似“XX_YY”的模式,但也可能有数百个类似theese的集合

我们可以通过查询
db.patterns
集合中的模式来获得模式,但我不知道如何在
db.patterns
中找到这些模式,然后在MongoDB中查询我们想要的模式,MongoDB中的示例如下

var collections = db.patterns.find();

db.getCollection(collections[0]).find();

如何在MeteorJS中实现这一点?

您只需执行
新建Mongo.Collection(“XX_-YY”)
即可获得具有该名称的集合

但是,如果创建多个指向同一基础集合的
Mongo.Collection
s,则可能会产生后果。我从来没有任何理由这么做,所以我不知道。但是,可以使用缓存来避免创建多个副本:

var collectionCache={};
函数getCollection(名称){
var cached=collectionCache[名称]
如果(!缓存){
cached=collectionCache[name]=new Mongo.Collection(name);
}
返回缓存;
}

我假设集合的数量是有界的,因此您不必担心缓存随着时间的推移会变得任意大。

您在Meteor中具体尝试过什么吗?Mongo选择器和对象很容易操作,所以我真的不知道你的阻塞问题在哪里对于每个模式,但我不知道这是否真的是动态的,例如,当一个模式被破坏或创建一个新模式时,我不知道它会产生什么影响,或者它是否是反应性的,例如,当应用程序已经运行时,访问一个新创建的模式集合。