
1 lod 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 直接更新数据库 |