Javascript 为数组中的每个名称查找Meteor中另一个集合中的一些用户数据
嗨,伙计们,我正在尝试为数组“eingeladene”中的每个名字获取电子邮件地址“Vorname”和“Nachname”,我有一个for循环要反复检查,但我的查找结果输出“null”;(因此,我的查找工作不正常我有两个集合,一个名为“事件”,其中数组位于其中,集合中的“Benutzer”是我要获取的用户数据 在数组中插入“Vorname”,因此我正在搜索具有此名称的用户(“Vorname”),然后获取电子邮件+Nachname 谢谢你的帮助,是的,我已经准备好了文档 顺便说一下,@iiro帮我走了这么远 更新:我尝试使用相同的代码检查生成的数据,我将数据插入了另一个集合中,但我错了,它不是“null”,我现在得到以下信息:Javascript 为数组中的每个名称查找Meteor中另一个集合中的一些用户数据,javascript,arrays,email,meteor,Javascript,Arrays,Email,Meteor,嗨,伙计们,我正在尝试为数组“eingeladene”中的每个名字获取电子邮件地址“Vorname”和“Nachname”,我有一个for循环要反复检查,但我的查找结果输出“null”;(因此,我的查找工作不正常我有两个集合,一个名为“事件”,其中数组位于其中,集合中的“Benutzer”是我要获取的用户数据 在数组中插入“Vorname”,因此我正在搜索具有此名称的用户(“Vorname”),然后获取电子邮件+Nachname 谢谢你的帮助,是的,我已经准备好了文档 顺便说一下,@iiro帮我
{
"_id": "HDF3XnvKzovnNdEiW",
"Email": {
"_id": "Gkddi6KhYf6BmF3jv",
"email": "examplemail@gmail.com"
},
"Vorname": {
"_id": "Gkddi6KhYf6BmF3jv",
"Vorname": "exampleVorname"
},
"Nachname": {
"_id": "Gkddi6KhYf6BmF3jv",
"Nachname": "exampleNachname"
}
}
问题在于,对于每个零件,id都与数据一起插入
我的目标就是这样
"Email": "examplemail@gmail.com"
希望您现在能帮助我;)我注意到有一件事是错误的,那就是findOne的语法 您没有在对象中指定“字段” 如果您只需要电子邮件:
Benutzer.findOne({Vorname: eingeladene[i]}, {email: 1});
编辑:很抱歉,我刚刚意识到这不是一种非常有效的方法,而且你有一些语法问题 具有相同结果的更好解决方案:
var obj = Benutzer.findOne({'vorname': eingeladene[i]}, {});
var emailData = {
name: obj.name,
beschreibung: obj.beschreibung,
erstelltAm: new Date(),
datum: obj.datum,
eingeladen: obj.eingeladene,
autor: obj.autor,
einladender: obj.einladender
};
Email.send({
to: obj.email,
from: "example@gmail.com",
...
});
当第一次调用将返回您所需的所有值时,创建不同的MongoDB效率极低
此外,变量名也应采用大小写。它将极大地提高可读性。如果你要出发的话,也许可以去看看
我强烈建议您也阅读本教程,并将其编码出来 评论的最后一句话是什么?/不,这句话是什么意思是的,我试过了。问题是,在变量电子邮件中,保存的是整个用户数据,而不仅仅是电子邮件地址;(但是谢谢你
var obj = Benutzer.findOne({'vorname': eingeladene[i]}, {});
var emailData = {
name: obj.name,
beschreibung: obj.beschreibung,
erstelltAm: new Date(),
datum: obj.datum,
eingeladen: obj.eingeladene,
autor: obj.autor,
einladender: obj.einladender
};
Email.send({
to: obj.email,
from: "example@gmail.com",
...
});