yml定义上的YYYYMMDD日期格式

时间:2019-08-14 14:16:47

标签: rest swagger openapi

我有一个要求,要求通过日期为YYYYMMDD格式。根据草率文档,在字符串类型下定义了日期字段。但是,它遵循RFC 3339第5.6节文档(例如格式为2018-03-20)

以下代码不适用于yaml。

from IPython.core.display import display, HTML
display(HTML("<style>div.output_scroll { height: 44em; }</style>"))

如何为YYYYMMDD的日期格式定义YAML定义。

1 个答案:

答案 0 :(得分:1)

根据type string的文档,您可以添加regex pattern来定义日期格式YYYYMMDD:

模式:'^ \ d {4}(0 [1-9] | 1 [012])(0 [1-9] | [12] [0-9] | 3 [01]) $'

还让我建议您将示例日期格式更新为日期,例如20190317,以轻松了解预期的日期格式。

definitions:
  Pet:
    type: object
    required:
      - id
      - name
    properties:
      id:
        type: integer
        format: int64
      name:
        type: string
      tag:
        type: string
      dateOfBirth:
        type: string
        minLength: 8
        maxLength: 8
        format: date
        pattern: '^\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])$'
        example: 20190816
        description: Birth date of the  member in YYYYMMDD format.