【发布时间】:2021-03-09 12:50:54
【问题描述】:
我正在尝试对数组的每个项目进行验证。
据我了解(如有错误请指正),class-validator 不支持直接验证数组。它需要我们创建一个包装类。
所以,以下是类:
export class SequenceQuery {
@MinLength(10, {
message: 'collection name is too short',
})
collection: string;
identifier: string;
count: number;
}
export class SequenceQueries{
@ValidateNested({ each: true })
queries:SequenceQuery[];
}
以下是我的控制器:
@Get("getSequence")
async getSequence(@Body() query:SequenceQueries) {
return await this.sequenceService.getNextSequenceNew(query)
}
以下是我传递给控制器的 JSON:
{"queries": [
{
"collection": "A",
"identifier": "abc",
"count": 1
},
{
"collection": "B",
"identifier": "mno",
"count": 5
},
{
"collection": "C",
"identifier": "xyz",
"count": 25
}
]}
但它似乎不起作用。它不会抛出任何验证消息。
【问题讨论】:
标签: javascript node.js typescript nestjs class-validator