我要发布一个搜索结果,并将结果限制为 500 个:
Meteor.publish("myPublish", function (status) {
var foundOnServer = MyCollection.find({"status": status}, {limit: 500, sort: {"someField": 1}});
console.log("returning " + foundOnServer.count() + " documents from server");
return foundOnServer;
});
但是当查询结果超过500个文档时,console.log显示的是实际数量(超过500个),但是在客户端,我只得到了500个文档。所以,它似乎被适本地限制了,但我不明白为什么控制台会报告实际的文档数量,而忽略了限制。
最佳答案
感谢@Curtis,这是一个已知问题: https://github.com/meteor/meteor/issues/1503
所以,如果你想用 console.log 向自己“证明”你得到了你要求的记录数,你应该这样做:
console.log("returning " + foundOnServer.fetch().length + " documents from server");
但是记录 .count 的结果也可能很有趣,因为它会显示查询何时超过限制。
关于mongodb - 在 Meteor 中,发布有限制的搜索结果时,为什么结果上的 ".count"显示超过限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29660284/