我在我的应用程序中使用@ nestjs / swagger模块。我想为我的查询参数之一声明multiselect枚举字段。我已经阅读了文档,可以结合使用enum
和isArray
属性来实现此目的。所以我做了类似的事情:
class QueryParams {
@ApiModelProperty({
enum: ['test_status_1', 'test_status_2'],
isArray: true
})
status: string[]
}
我正在使用此类来验证查询。不幸的是,它不起作用。因此,我决定像这样在控制器中使用@ApiImplicitQuery
:
@ApiImplicitQuery({
name: 'status',
enum: ['test_status_1', 'test_status_2'],
isArray: true,
collectionFormat: 'csv'
})
这允许我声明multiselect枚举,但是将这些参数添加到url的方式存在问题。如果选择多个值,则会得到:
?status=test_status_1&status=test_status2
我希望如上所述使用csv
格式发送它们。目前,它使用的是multi
格式。有没有办法做到这一点?我做错了什么?