DarkaOnline Swagger-php生成不正确的界面



我目前正在通过以下方式使用 Swagger php 库: https://github.com/DarkaOnLine/L5-Swagger

在我的示例模型类中是这样的:

/** @OASchema(
*    title="ProductPromotion",
*  @OAProperty(property="id", type="integer"),
* @OAProperty(property="uid", type="string"),
* @OAProperty(property="store_id", type="integer"),
* )
*/
class ProductPromotion extends Model
{
..
}

请注意,我在那里的第 3 个属性中写了"store_id"。但是当我使用这个 jar 文件时:openapi-generator-cli-4.1.3,我得到这样的界面:

export interface ProductPromotion { 
id?: number;
uid?: string;
storeId?: number;
}

名称从"store_id"更改为"storeId"。我不要这个,有人知道如何解决这个问题吗?

编辑:用于生成以下内容的命令:

java -jar openapi-generator-cli-4.1.3.jar generate -i C:UsersASUSDesktopOpenAPICodegenswagger.json -g typescript-angular -o C:UsersASUSDesktopOpenAPICodegendist

也许这可以帮助你:

https://github.com/openapitools/openapi-generator/wiki/FAQ

打字稿 JSON 响应由于变量命名的更改(snake_case camelCase(而无法正确反序列化到对象中。有什么方法可以保留原始命名吗? 是的,请在生成 TypeScript 客户端时使用以下选项:

modelPropertyNaming
Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name (Default: camelCase)

多亏了iizno 的回答,我设法通过在生成打字稿代码时添加这个附加属性来解决它。

java -jar openapi-generator-cli-4.1.3.jar generate -i C:UsersASUSDesktopOpenAPICodegenswagger.json -g typescript-angular -o C:UsersASUSDesktopOpenAPICodegendist --additional-properties modelPropertyNaming=snake_case

最新更新