2017-10-09 12 views
1

私はswagger/swagger-codegenで2番目のAPIを実現しています。 は私の最初の1で、本当に良いスタートを切った後、私は次のような問題で多少こだわっている: 私は次のように複数の定義抱えている:swagger-codegenシンプルモデルがありません

TopIssueReference: 
    description: Id of a top issue 
    type: string 
    example: 
    itemid: 'd32c1213-4773-442e-9c5f-f5d516358869' 

すべてのそれらの定義のみ文字列型の別名ですが、いくつかのフォーマット日時で、上記のような裸のものもあります。

スワガーエディタはこれらの定義で問題ありません。

何らかのオブジェクト定義内の$ref句でそれらの1つを使用すると、ジェネレータは、この場合はTopIssueReferenceのような名前のクラスへの参照を生成します。本当に便利ではありません

@ApiModel(description = "Id of a top issue") 
public class TopIssueReference { 
    @Override 
    public String toString() { 
    StringBuilder sb = new StringBuilder(); 
    sb.append("class TopIssueReference {"); 
    sb.append("}"); 
    return sb.toString(); 
    } 
} 

生成TopIssueReferenceクラス(Javaで)次のようです。

ここで何が問題になっているのか誰もが知っていますか? ジェネレータは、Stringへの参照を生成するか、少なくともTopIssueReferenceを文字列から派生させるべきではありません(しかし有用かもしれません)?

これらの定義のいくつかについては、ジェネレータはクラスをまったく生成しませんが、参照はまだ存在するため、結果のコードはコンパイルされません。

私はサーバーとクライアントをjavaとpythonで生成しようとしましたが、どちらも同じ問題を抱えています。

+0

既知の問題のようです:[#2314](https://github.com/swagger-api/swagger-codegen/issues/2314)、[#3483](https://github.com/swagger- api/swagger-codegen/issues/3483) – Helen

+0

ありがとう、実際には自分自身を見つけることはできませんでしたが、それは私の問題を正確に説明しています。 – Gottfried

+0

最新のマスターを試すことはできますか? SNAPSHOTはREADMEにあります。私はこれに対処しているPRがあることを覚えていますが、間違っている可能性があります –

答えて

0

コードを生成するためにスワッガーファイルにベローズコードを試してください。

TopIssueReference: 
    description: Id of a top issue 
    type: object 
    properties: 
     itemid: 
     type: string 

私はあなたに役立つことを願って...!

関連する問題