所以我有一个项目,我可以通过ID或名称访问数据库表。
我的分类路线:
router.get('/name/:name', function(req, res) {
Category.fetchName(res, req.params.name);
console.log(res.name);
});
我的分类模型:
static fetchName(res, categoryName) {
categories.find({
name: categoryName
})
.then((doc) => {
res.send(doc);
console.log(doc);
});
}
当我执行console.log(doc)
时,它会打印出数组
[ { _id: 57f7d8382604126103f0113b, name: 'stuff' } ]
但是当我在路线中访问它时,它会显示undefined
。我错过了什么?为什么我无法访问路径中从数据库中获取的数据?
提前致谢!
答案 0 :(得分:0)
由于您未在res.name
对象中添加name property
,因此无法获得res
。
router.get('/name/:name', function(req, res) {
Category.fetchName(res, req.params.name, function(err, result) {
if (!err) {
console.log(result);
res.send(result);
}
});
});
static fetchName(res, categoryName,callback) {
categories.find({
name: categoryName
})
.then((doc) => {
callback(null,doc);
console.log(doc);
});
}