2016-10-07 17 views
0

私は、id、first_name、last_name、created_atで定義されたユーザーモデルを持っているとします。スワッガーで投稿要求からオブジェクトフィールドを削除する方法

ユーザーを作成するPOST要求には、first_nameとlast_nameが必要です。どのように私はそれを誇張して書くだろうか?スワッガーは単一のオブジェクトを期待しています。私はそのために新しいオブジェクトを作成すべきですか?

+0

私を見つけましたか?助けが必要な場合や追加の支援が必要な場合 –

答えて

0

first_namelast_nameを必須フィールドとしてマークすることができます。次に例を示します。

required: 
    - first_name 
    - last_name 

は、文献:https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml#L658-L660(つまり、別のオブジェクトを作成する必要はありません)

+0

しかし、それはまだドキュメントで混乱するでしょう。私は、ユーザーが作成されたときに生成される "id"フィールドを持つユーザーオブジェクトがある場合に、より多くを参照しています。投稿要求は、 "id"のない "User"オブジェクトを期待します。 「id」を必須ではないとマークした場合、APIのユーザーは「id」がオプションであると考えて、それを渡します – EugeneMi

1

どの程度

myuser: 
    allOf: 
    - $ref: '#/definitions/myuserbase' 
    - type: object 
    properties: 
     id: 
     description: | 
      Unique identifier for the classifier. 
     type: string 
     example: user1 
     created_at: 
     description: | 
      Date and time the user was created. 
     type: string 
     format: date-time   
    required: 
     - id 

myuserbase: 
    type: object 
    properties: 
     first_name: 
     description: | 
      First name of the user 
     type: string 
     last_name: 
     description: | 
      Last name of the user 
     type: string 
    required: 
     - first_name 
     - last_name 
関連する問題