node.js - 使用 NestJs 从数据库中获取隐藏字段
问题描述
我在密码上应用了隐藏属性:
@Column({nullable: true, select: false})
password: string;
进行登录我需要提交密码。因此,根据他的文档, 我可以使用以下方法选择此隐藏值:
const qb = getConnection().createQueryBuilder()
const user = await qb
.select("password", "password")
.from(User, 'user')
.where("password = :password", {
password: password
})
.addSelect('password', 'password')
.getOne()
这样做我得到undefined
了,password
无论如何财产仍然是隐藏的。
如何在我的情况下获得隐藏的价值?
解决方案
根据文档,您可以使用
.addSelect('user.password')
你有.addSelect('password', 'password')
哪个行不通。不要为隐藏列别名列。(可能是 TypeOrm 中的一个错误)。
这也将起作用
.select('user.password')
您不需要两者select
,addSelect
对于相同的列,addSelect
由于已经选择了列,所以什么都不做。
推荐阅读
- jquery - jQuery CSS - 模态框上的自动完成下拉菜单
- python - 使用折线图绘制一段时间内的数据
- php - 如何不向其他开发人员公开生产数据库凭据?
- laravel - Laravel Eloquent 如何查询多个“来自”?
- three.js - 理解three.js坐标和轴系的问题
- javascript - 使用 Javascript 将 Flat JSON 转换为 JSON 树
- laravel - 将异常错误消息返回到变量 Laravel
- c# - C#:泛型类中的受保护变量可以由该泛型类的不同子类访问。我可以防止这种情况吗?
- scala - 如何让 scalacheck 使用 Seq 在课堂上工作?
- php - 在大型 PHP 项目中处理配置?