【发布时间】:2015-04-05 08:57:19
【问题描述】:
嗨,有没有更好/更漂亮的方式来编写这个查询?
exports.list = function(req, res) {
if (req.user.roles.indexOf('admin') == 1) {
Timesheet.find()
.sort('-created').populate('user', 'displayName').exec(function (err, timesheets) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.jsonp(timesheets);
}
});
}
else {
Timesheet.find()
.where('user').equals(req.user.id)
.sort('-created').populate('user', 'displayName').exec(function (err, timesheets) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.jsonp(timesheets);
}
});
}
};
唯一不同的是,如果 admin 然后添加 .where('user').equals(req.user.id)
【问题讨论】:
-
我投票结束这个问题,因为它更适合codereview.stackexchange.com。
-
@Andy 我也是这么想的,但我认为它是 Mongoose 特有的,足以成为话题。
标签: javascript mongodb rest mongoose database