1
我一直在考虑使用Node和MongoDb作为Android应用程序的评分系统,到目前为止我已经实现了创建,更新和删除罚款,但是我很遗憾当我想从数据库中获取平均评分时,请这样做。下面是数据结构时我给了决定:Node.JS + MongoDB汇总框架的平均值
[
{
"_id": "1",
"ratings": [
{
"value": "5",
"user": "CoolUser1"
},
{
"value": "4",
"user": "CoolUser2"
}
]
},
{
"_id": "2",
"ratings": [
{
"value": "4",
"user": "CoolUser3"
},
{
"value": "2",
"user": "CoolUser4"
}
]
}
]
基本上我需要的是在一个给定_id收视率的平均值。
这里是更新方法,我用给我怎么也设置MongoDB的连接感:
exports.updateRating = function(req, res) {
var id = req.params.id;
var rating = req.body;
console.log('Updating a rating: ' + id);
console.log(JSON.stringify(rating));
ratings.update({'_id': id},
{$push: rating},
{upsert:true},
function(err, result) {
if (err) {
console.log('Error updating rating: ' + err);
res.send({'error':'An error has occurred'});
} else {
console.log('' + result + ' document(s) updated');
res.send(rating);
}
}
);
}
想想你到数值,完美的作品时,我存储的收视率作为数量 –