如何解决猫鼬聚合函数结果
我在节点中具有控制器功能并具有检索平均汇率的功能
exports.getRecipe = async (req,res) => {
try{
let id = req.params.id;
await Recipe.findOne({_id: id})
.populate('user')
.exec(function (err,rec) {
if (err) return handleError(err);
//let rateAverage = getRateAverage(rec._id);
//console.log(rateAverage)
res.json(rec);
});
} catch(err)
{
return res.status(500).json({error: err.message})
}
}
const getRateAverage = (recipe_id) => {
try{
console.log(recipe_id)
Rate.aggregate([
{ $match: { recipe: mongoose.Types.ObjectId(recipe_id) } },{ $group: {
_id: '$recipe',avgRate: { $avg: '$rate'}
}}
],function (err,results) {
if (err) {
console.error(err);
} else {
return results[0].avgRate;
}
});
} catch(err)
{
console.log(err);
}
}
我无法从 exec 回调中获得平均总和(甚至可能吗?)我该怎么办?我的 getRateAverage
函数中有正确的回调函数结果,但我无法摆脱函数
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。