有没有办法在不同的minimongo集合中存储同一服务器集合的订阅?
如果没有最佳做法可以解决?
我的汇总表中有50k数据集,文档中有很多细节。
// Server
var collection = new Meteor.Collection("collection");
Meteor.publish("detail", function (id) {
return collection.find({_id: id});
});
// A pager that does not include the data (fields:{data:0})
Meteor.publish("master", function (filter, sort, skip, limit) {
return collection.find({name: new RegExp("^" + filter + "|\\s" + filter, "i")},
{limit: limit,
skip: skip,
sort: options,
fields: {data: 0}
});
});
// Client
var collection = new Meteor.Collection("collection");
Deps.autorun(function () {
Meteor.subscribe("master",
Session.get("search"),
Session.get("sort"),
Session.get("skip"),
Session.get("limit")
);
Meteor.subscribe("detail", Session.get("selection"));
});
上面的问题:两个订阅都被输入到同一个集合中。
如果查找结果存储在同一本地集合中,则此方法无效。
拥有一个包含订阅/发布名称的本地集合会很棒。
// Client
var detail = new Meteor.Collection("detail"),
master = new Meteor.Collection("master");
任何想法如何鼓励订阅使用我自己的收藏品?
答案 0 :(得分:1)
我通过Andrews Hint的帮助找到了解决方案 Discover Meteor 一书,其中显示了许多发布订阅方案。
无论如何:阅读后我发现我前往的问题也在Meteor文档Meteor.publish
中得到了回答。最后一个示例基本上为“messages”集合创建了一个虚拟集合“counts”。干得好; - )
“Wer lesen kann ist im Vorteil!”