使用 node/express 中的书架获取我从数据库中获取的信息?
Getting the info I get from the database using bookshelf in node/express?
我在我所有的用户中都是这样搜索的
User.where({id: req.params.id}).fetchAll({columns:['id','email']}).then((resData) => {
res.json(resData);
}).catch(err => {
res.json(err);
});
得到这样的东西:
[
{
"id": 1,
"email": "name@gmail.com",
}
]
但是我如何在我的程序中访问这些数据。例如,在 res.json(resData)
之前做类似
的事情
if (resData.email == 'john@gmail.com') {
res.json(resData);
} else {
res.send(403);
}
首先如果你只想要一条记录,你必须使用fetch()
,而不是fetchAll()
。然后你可以使用.get()
来获取个别属性:
User.forge({id: req.params.id}).fetch({
columns:['id','email']
}).then((resData) => {
if (resData.get('email') === 'john@gmail.com') {
res.json(resData);
} else {
res.send(403);
}
})
或者,如果您想查看模型的所有属性,它们在以下位置可用:
resData.attributes
我在我所有的用户中都是这样搜索的
User.where({id: req.params.id}).fetchAll({columns:['id','email']}).then((resData) => {
res.json(resData);
}).catch(err => {
res.json(err);
});
得到这样的东西:
[
{
"id": 1,
"email": "name@gmail.com",
}
]
但是我如何在我的程序中访问这些数据。例如,在 res.json(resData)
之前做类似
if (resData.email == 'john@gmail.com') {
res.json(resData);
} else {
res.send(403);
}
首先如果你只想要一条记录,你必须使用fetch()
,而不是fetchAll()
。然后你可以使用.get()
来获取个别属性:
User.forge({id: req.params.id}).fetch({
columns:['id','email']
}).then((resData) => {
if (resData.get('email') === 'john@gmail.com') {
res.json(resData);
} else {
res.send(403);
}
})
或者,如果您想查看模型的所有属性,它们在以下位置可用:
resData.attributes