【发布时间】:2017-03-01 13:16:56
【问题描述】:
我有图像模型和用户模型。 每个图像都有一个用户的 user_id 字段,我想获取用户的图片和名称,将其添加到图像对象并返回图像数组。
当我尝试将 author_image 字段添加到一个图像时,我没有任何错误, 但是,当我遍历所有图像时,应用程序崩溃的输出是 imagesData 以及 userData 未定义。 我尝试使用 Promise,但再次出现错误。 在没有未定义错误的情况下,我能做到这一点的最佳方法是什么?
router.route('/images/all')
.get(function(req,res){
var response = {};
var imagesData = {};
images.find({}).lean().exec(function(err,data){
// console.log(data);
imagesData = data;
if (!err) {
for (var i = 0; i < imagesData.length; i++) {
users.find(({'_id': imagesData[i].user_id}),function(err,userData){
console.log(userData);
imagesData[i].author_pic = userData[0].profile_image;
});
}
}
res.json(imagesData);
});
});
【问题讨论】: