Я пытаюсь вставить проверку в запрос PUT.
DTO:
export class SettingUpdateDto implements ISettingUpdate {
@IsInt()
@IsPositive()
id: number;
@IsNotEmpty()
@IsString()
value: string;
}
export class SettingArrayUpdateDto {
@Type(() => SettingUpdateDto)
@ValidateNested({ each: true })
items: SettingUpdateDto[];
}
Контроллер
@Put()
async updateItem(@Body() items: SettingArrayUpdateDto) {
return await this.dataService.update(items);
}
Обслуживание
async update(items: SettingArrayUpdateDto[]): Promise<Setting> {
console.log("service data", items);
return <Setting>{}; <SettingUpdateDto[]>items;
}
Когда я отправлял такие данные:
[
{"id": -20, "value": {"name": "333"}},
{"id": 21, "value": "2222222222222222"}
]
Я получил пустой массив. Что я делаю неправильно? Где ошибка?
Когда я меняю настройки в контроллере с SettingArrayUpdateDto на любые, контроллер получил исходные данные запроса.
Версия NestJs 6.10.14.