如何在Meteor中显示相关的子文档属性

时间:2013-03-12 14:40:20

标签: meteor

我是Meteor / MongoDB的新手,我正试图用这样的东西来描述一个用户和他在流星项目中的东西:

{ _id: whatever,
  name: "John Doe",
  myToys: [ {toy_id: "truck",
             quantity: 2},
            {toy_id: "legoset",
             quantity: 4} ]
}

我有另一个集合,其中包含所有toy_ids及其属性(制造商,受欢迎程度等以及其他可能在以后更改的属性,这就是为什么我在单独的集合中有这个)。

我如何在meteor中对其进行最佳编码并将其模板化以循环播放特定用户的玩具子文档数组,并仍然显示每个玩具的相关属性?

谢谢!

1 个答案:

答案 0 :(得分:1)

我们可以使用Meteor.userId识别登录用户,因此如果您存储该ID以识别您玩具收藏中的每个人的玩具,以便用户在使用时可以知道他是哪些玩具Toys.find({}) < / p>

您可以为template helper执行此操作。

Template.home.toys = function() {
    return Toys.findOne({user:Meteor.userId});
}

接下来,您可以使用handlebars

在模板中循环显示此内容
<template name="home">
    Name: {{name}}
    {{#each toys.myToys}}
       Toy Id: {{toy_id}}
       Toy Quantity: {{quantity}}
    {{/each}}
</template>