NestJS/swagger:ApiExtraModel 期望啥模型作为参数?

Posted

技术标签:

【中文标题】NestJS/swagger:ApiExtraModel 期望啥模型作为参数?【英文标题】:NestJS/swagger: what model is the ApiExtraModel expecting as a parameter?NestJS/swagger:ApiExtraModel 期望什么模型作为参数? 【发布时间】:2020-07-23 09:08:39 【问题描述】:

@nestjs/swagger 文档描述了here 应该以这种方式定义一个额外的模型:

@ApiExtraModels(ExtraModel)
export class CreateCatDto 

但是这里的ExtraModel 是什么?文档对此不是很清楚。

【问题讨论】:

【参考方案1】:

我遇到了同样的不确定性。 在谷歌搜索https://github.com/nestjs/swagger/pull/355/files 之后,我理解了文档:

首先导入您的模型以供 import ExtraModel from '<filename>' 引用( 然后将其作为参数“ExtraModel”提供给装饰器 装饰器然后装饰引用模型的类(因此提供引用)

我猜你和我有同样的想法,ApiExtraModels-decorator 作用于模型......

干杯, 斯蒂芬

【讨论】:

【参考方案2】:

当我在控制器顶部设置 @ApiExtraModels(MyModelClass) 时为我工作。

感谢本主题以及 GitHub 问题中的 this comment。

我不想在 SwaggerModule.createDocument 的 extraModels 数组中列出所有模型,所以这对我来说是一个很好的解决方案。

【讨论】:

以上是关于NestJS/swagger:ApiExtraModel 期望啥模型作为参数?的主要内容,如果未能解决你的问题,请参考以下文章

@nestjs/swagger 没有设置授权标头

@nestjs/swagger:如何添加 API URL?

NRWL + NestJS 尝试使用 Swagger 插件

“nestjs/swagger”中的哪个函数将 DTO 转换为 Swagger 模型定义?

NestJs/swagger:定义没有 DTO 类的引用模式

如何使用 nestjs/swagger 更改查询参数序列化?