Я пытаюсь проверить вложенные объекты с помощью валидатора классов и NestJS. Я уже пробовал следовать этому потоку, используя декоратор @Type
из class-transform, и мне не повезло. Вот что у меня есть:
DTO:
class PositionDto {
@IsNumber()
cost: number;
@IsNumber()
quantity: number;
}
export class FreeAgentsCreateEventDto {
@IsNumber()
eventId: number;
@IsEnum(FinderGamesSkillLevel)
skillLevel: FinderGamesSkillLevel;
@ValidateNested({ each: true })
@Type(() => PositionDto)
positions: PositionDto[];
}
Я также использую встроенный канал проверки nestjs, это мой начальный этап:
async function bootstrap() {
const app = await NestFactory.create(ServerModule);
app.useGlobalPipes(new ValidationPipe());
await app.listen(config.PORT);
}
bootstrap();
Он отлично работает для других свойств, только массив объектов не работает.
"positions": [{"other": true}]
в свое тело, оно отклонится с 400. Однакоpositions: []
- допустимое значение. - person Kim Kern   schedule 14.12.2018positions: [1]
, выдаст ошибку - person Leonardo Emilio Dominguez   schedule 14.12.2018