У меня есть коллекция "user" с такими документами, как
{
_id:ObjectId("xx"),
searches:[
{someId:"yyy","fav_food":"pasta"},
{someId: "zzz","fav_food":"macncheese"}
]
}
SomeId сопоставляется с другой "работой" коллекции
{
_id:yyy,
job_name:"clerk",
"name": "kent"
},
{
_id:zzz,
job_name:"racer",
"name":"michael"
}
Мне нужно улучшить данные в пользовательской коллекции изколлекция заданий
Таким образом, пользовательский документ должен быть:
{
_id:ObjectId("xx"),
searches:[
{someId:"clerk::kent",fav_food:"pasta"},
{someId: "michael::racer","fav_food":"macncheese"}
]
}
У меня есть
mongo_db.collection('job', function(err,coll){
for(var i = 0; i <= data.searches.length-1; i++) {
var pid = data.searches[i].someId;
console.log("RELEASE ID " + someId);
if(pid !== null || pid !== undefined){
result = coll.findOne({"_id":ObjectId(pid)});
if(result){
console.log("this is data searches for index " + i+ " " + JSON.stringify(data.searches[i])
+ " and data.searches " + JSON.stringify(data.searches) + " and this is result " + JSON.stringify(result));
data.searches[i].someId = result.name + "::" + result.job_name;
}
}
}
return data;
})
Это не похоже на работу ... Любая идея, как я могу сделатьэтот?Я знаю, что должен использовать функции Promises / Async, но не могу найти правильную комбинацию.