【发布时间】:2021-10-22 13:35:57
【问题描述】:
如何为每个请求指定一个具有默认值的字段?不适用于所有请求。我知道如何在类验证器中传递字段的默认值:
export class CreateUserDto {
@IsString()
username = "static-username";
}
但是这段代码会导致所有请求的静态默认值,但是我需要为每个请求生成一个用户名。注意:我知道我可以在控制器中处理这些类型的问题/问题。但我认为最好在验证器中处理它。在以下示例中,您可以通过在控制器中处理随机值来了解我的意思:
class CreateUserDto {
@IsOptional()
@IsString()
username?: string;
}
/* ... */
@Post('/users')
async createUser(@Body user: CreateUserDto) {
if (user.username === undefined) {
user.username = `random-${Math.random()}`
}
}
/* ... */
【问题讨论】:
标签: node.js validation nestjs default-value class-validator