gpt4 book ai didi

javascript - Meteor 从数组返回值以在另一个集合中使用它

转载 作者:行者123 更新时间:2023-11-27 23:39:45 25 4
gpt4 key购买 nike

这个问题和我上一个问题几乎一样: Meteor return value as string ,但我还没有完全弄清楚。

我的情况:我得到了一个users集合和一个Projects集合。在我的 Projects 集合中,我收到了一个“Invited”文档,其中包含一组受邀用户(他们的用户 ID)。像这样:

{
"_id" : "XpS6CLJpujtTKEdBe",
"projectname" : "Projectnaam 1",
"invited" : [
"vcHkGjTMQG57tTPRG",
"zhwaQTSRSA9RM3Phr",
"3JxXtYmbqAMEBezti"
]
}

我想返回受邀用户的名字和姓氏。但名字和姓氏集合位于 users 集合中。因此,我必须从数组中获取 ID,并使用每个 ID 来获取用户集合的名字和姓氏。谁能帮助我实现这一目标?谢谢!

你的,升

最佳答案

循环遍历每个项目,通过在文档的邀请数组中搜索用户集合中的每个 id 来查找相关的用户文档,并使用 map() 返回修改后的项目数组文档:

Template.projects.helpers({
projects: function(){
return Project.find({}).map(function (doc){
doc.invited = User.find({"_id": {"$in": doc.invited}}, {fields: {"firstname": true, "surname": true}});
return doc;
});
}
});

<template name="projects">
{{#each projects}}
<h1>{{this.projectname}}</h1>
<ol>
{{#each this.invited}}
<li>{{firstname}} {{lastname}}</li>
{{/each}}
</ol>
{{/each}}
</template>

关于javascript - Meteor 从数组返回值以在另一个集合中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33784473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com