web-dev-qa-db-ja.com

Swagger 2.0:タイプモデルの定義プロパティを宣言する方法は?

Swagger2.0でモデル型の定義プロパティを宣言したい

この定義は正しいですか? (特にタイプ:StatusObject部分)

definitions:
  MyObject:
    type: "object"
    properties:
      id:
        type: "number"
      country:
        type: "string"
      status:
        type: StatusObject
  StatusObject:
    type: "object"
    properties:
      code:
        type: "number"
      shortMessage:
        type: "string"
      message:
        type: "string"

ありがとう!

10
JAM

他のモデル/定義の参照は、「$ ref」を使用して行われます。

上記のスニペットは次のようになります。

definitions:
  MyObject:
    type: "object"
    properties:
      id:
        type: "number"
      country:
        type: "string"
      status:
        $ref: StatusObject
  StatusObject:
    type: "object"
    properties:
      code:
        type: "number"
      shortMessage:
        type: "string"
      message:
        type: "string"

別のコメント-IDとコードのタイプとして「数値」を使用しています。 「数値」には、必要かどうかわからない小数点を含めることもできます(特にidの場合)。整数のみが必要な場合は、「整数」の使用を検討してください。

26
Ron

Swagger 2.0の場合:

definitions:
  MyObject:
    properties:
     id:
      type: "number"
     country:
      type: "string"
     status:
      $ref: "#/definitions/StatusObject"
  StatusObject:
   properties:
    code:
     type: "number"
    shortMessage:
     type: "string"
    message:
     type: "string"
15
Etienne