我有以下Bookshelf模型:
Bookshelf.model.extend({
tableName: 'users',
hidden: ['password']
}, {
async getBy(filter) {
return await this.query({where: filter}).fetch();
}
})
如您所见,字段password
被隐藏(因为我通常不希望它显示)。
但是,我需要它来连接我的用户(在进行哈希比较时):
const user = await userModel.getBy({email: req.body.email});
if (await bcrypt.compare(req.body.password, user.password)) {
// here user.password is undefined because it is hidden
}
有没有办法快捷查看可见性插件并获取密码而无需直接使用knex
(Bookshelf.knex.raw()
)这样做?
致以最诚挚的问候,
答案 0 :(得分:5)