我将如何使用 TypeORM 来解决这个问题?
我有一个实体,我们将其称为 EntityA。
我的数据库中有 1 个 EntityA,名称 = Joe,年龄 = 17
现在,我的前端向我的 API 发送一个带有类似 { name: Joe,age: 16 } 的对象的 post 请求
如何告诉 type orm 用“Joe”的名称更新数据库中的 EntityA,并且仅更新提供的与数据库中当前存储的值不同的值(在本例中为年龄)?
我遇到了同样的问题,尤其是列undefined中的值nullable。以我项目的产品存储库更新功能为起点。我使用条件扩展语法(...) 动态“构建”查询。请参阅此了解更多信息。
async function update(id: string, user: User): Promise<User> {
// Update
await userRepository.update(id, {
...(user.name && { name: user.name }),
...(user.surname && { surname: user.surname }),
...(user.age && { age: user.age }),
});
// Return
return this.repository.findOneOrFail(id);
}
Run Code Online (Sandbox Code Playgroud)
仅更新 中存在的列user。例如:如果不user.name存在,则不更新它,因为它不在更新对象中。
| 归档时间: |
|
| 查看次数: |
15623 次 |
| 最近记录: |