1
nziu 2022-09-15 10:22:49 +08:00
可以重写属性添加修饰器
export class UpdateUserDto extends PartialType(CreateUserDto) { @IsOptional() @IsString() name?: string; } |
2
yodhcn OP @nziu #1 是的,可以重写,但如果我多数字段都是 NOT NULL 的活,我也只能将每个字段手动重写,PartialType 失去了它的存在意义,这是否意味着 PartialType 设计的不合理?
|
3
lzgshsj 2022-09-15 10:56:33 +08:00
参考 https://github.com/typestack/class-validator/issues/579
应该重写成 @ValidateIf((object, value) => value !== undefined) 也不好说是 PartialType 不好,更多可能是 @IsOptional()的问题 而且这个问题在 class-validator 的 issues 里讨论的更多 |
4
magewu1223ll 2022-09-15 11:10:23 +08:00
在你的 update 或者 create 里加上 || '' ?
|
5
optional 2022-09-15 11:23:30 +08:00 via iPhone
不从 dto 直接更新数据库
|