0

简短的问题

有没有办法在客户端过滤文档?

长问题

所以我在当前的 Meteor JS 项目中有用户帐户,用于存储子文档,例如电子邮件和漫画。

_id: "jGZgBRqPRGFakcQRS",
comics:[
    {_id: "z4fq6QWKfQiX4G5gb",
    appearanceName: "Paradigm's Los",
    coverart: "sampleurl",
    heroName: "deadpool",
    publisher: "marvel"
    volNo: "-1"},
    {_id: "kvQLtT5nMdqhsxBRp",
    appearanceName: "Test",
    coverart: "sampleurl2",
    heroName: "deadpool",
    publisher: "marvel",
    volNo: "1"}],
emails: [{address: "email@email.com",
    verified: false}],
username: "test"

我还有一个名为“Volumes”的不同集合,它在单击时将 _id、appearanceName、coverArt、heroName、publisher 和 volNo 传递给漫画数组。我目前有一个 {{#each}} 显示卷中的文档。如果“漫画”数组中存在某个漫画,并且如果漫画数组中项目的 _id 与 Volumes _id 匹配,我想在客户端显示某个链接,如果它不满足这两个要求,则显示不同的链接。由于聚合不起作用,我完全被卡住了。提前谢谢。

4

1 回答 1

0

我没有找到简单的方法来过滤子文档中的数据,所以我总是创建单独的集合。然后你需要加入集合,你可以在这篇文章中阅读如何做:http ://www.meteor.hromnik.com/blog/joins-in-meteorjs-and-mongodb

如果您只想在子文档中查找数据,您可以这样做:

Meteor.users.findOne({
  'comics._id': yourComicsId
});

它将找到具有给定漫画 ID 的用户文档。

于 2015-04-20T08:41:36.383 回答