gpt4 book ai didi

node.js - NestJS TypeORM 可选查询不起作用

转载 作者:行者123 更新时间:2023-12-02 18:12:16 25 4
gpt4 key购买 nike

我有一个问题,我已经将查询参数设置为可选的,但它并没有反射(reflect)出 optional in swagger,

这是我的代码:

    @Get('pagination')
@ApiOperation({ summary: 'Get Activity Post Pagination Enabled' })
public async getActivityPostPagination(
@Query('page', new DefaultValuePipe(1), ParseIntPipe) page: number,
@Query('limit', new DefaultValuePipe(10), ParseIntPipe) limit: number,
@Query('user_id') user_id?: string,
@Query('badge_id') badge_id?: string,
@Query('title') title?: string,
) {
//code here
}

但是是swagger,它显示是这样的:

enter image description here

页面和限制不是可选的,但对于其他查询参数必须是可选的,我在这里缺少什么?

谢谢

最佳答案

您应该从@nestjs/swagger 包中添加@ApiQuery 标签,并为可选字段传入 required: false 参数。

  @Get('pagination')
@ApiOperation({ summary: 'Get Activity Post Pagination Enabled' })
@ApiQuery({ name: 'user_id', required: false, type: String })
@ApiQuery({ name: 'badge_id', required: false, type: String })
public async getActivityPostPagination(
@Query('page', new DefaultValuePipe(1), ParseIntPipe) page: number,
@Query('limit', new DefaultValuePipe(10), ParseIntPipe) limit: number,
@Query('user_id') user_id?: string,
@Query('badge_id') badge_id?: string,
@Query('title') title?: string,
) {
//code here
}

关于node.js - NestJS TypeORM 可选查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72131909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com