例如,我有这些文件:
{
"addr": "address1",
"book": "book1"
},
{
"addr": "address2",
"book": "book1"
},
{
"addr": "address1",
"book": "book5"
},
{
"addr": "address3",
"book": "book9"
},
{
"addr": "address2",
"book": "book5"
},
{
"addr": "address2",
"book": "book1"
},
{
"addr": "address1",
"book": "book1"
},
{
"addr": "address15",
"book": "book1"
},
{
"addr": "address9",
"book": "book99"
},
{
"addr": "address90",
"book": "book33"
},
{
"addr": "address4",
"book": "book3"
},
{
"addr": "address5",
"book": "book1"
},
{
"addr": "address77",
"book": "book11"
},
{ …Run Code Online (Sandbox Code Playgroud) 我有一个系列Feeds和一个系列FeedElements.FeedElements文档Feeds通过feedId字段引用该集合.此外,所有FeedElements文档都有日期字段submitted.
我想只发布最新的(由字段确定submitted)FeedElements文档,该文档对应于一个Feeds文档.
这是我尝试过的:
Meteor.publish('recentFeedElements', function (userId) {
var feedIds = Feeds.find({'userId': userId}).map(function(feed) {
return feed._id;
});
if (feedsIds.length > 0) return FeedElements.find({feedId: {$in: feedIds}}, {sort: {submitted: -1});
else this.ready();
});
Run Code Online (Sandbox Code Playgroud)
问题是,如果我用limit结合sort的内部FeedElements.find()查询,我只得到所有的最新文档Feed文件.但是,我希望有一个严格的1-1关系.所以,一个Feed文件 - >最新的FeedElements文件与适当的参考.