Model 提供';示例值';对于带有可选字段的swagger.yaml对象
我试图在“模型”选项卡中提供更多描述,并在“示例值”选项卡中提供带有可选对象的swagger.yaml对象的示例值 我的补丁请求(RestAPI)使用的模型在My swagger.yaml中定义如下:Model 提供';示例值';对于带有可选字段的swagger.yaml对象,model,swagger,Model,Swagger,我试图在“模型”选项卡中提供更多描述,并在“示例值”选项卡中提供带有可选对象的swagger.yaml对象的示例值 我的补丁请求(RestAPI)使用的模型在My swagger.yaml中定义如下: mymodel: items: - $ref: '#/definitions/modelHeader' - $ref: '#/definitions/modelPayload' 目前,mymodel已经 “Model”为“mymodel{}”,而“Exam
mymodel:
items:
- $ref: '#/definitions/modelHeader'
- $ref: '#/definitions/modelPayload'
目前,mymodel已经
“Model”为“mymodel{}”,而“Example Value”为“{}”
modelHeader和modelPayload是定义了示例的复合对象。
尽管mymodel不强制任何字段,但我希望它用示例显示这些可选字段
我知道我可以在示例中定义一个最小值,例如:[{name:'myname',value:'myvalue1'},{name:'myname2',value:'myvalue2'}]
但这很麻烦,仍然无法填充“模型”。
是否可以提供json的url作为示例
如有任何提示或想法,将不胜感激。我仍然不熟悉YAML规范您的规范无效,因为
项
需要单一类型,而不是类型数组:
items:
type: string
# or
items:
$ref: '#/definitions/something'
我希望mymodel是一个使用“allOf”的对象
allOf
的正确语法是:
mymodel:
allOf:
- $ref: '#/definitions/modelHeader'
- $ref: '#/definitions/modelPayload'
allOf
重用每个模型中的示例。例如,如果基本模型定义如下:
modelHeader:
type: object
properties:
id:
type: integer
example: 1
modelPayload:
type: object
properties:
name:
type: string
example: Alice
mymodel
获取以下示例:
{
"id": 1,
"name": "Alice"
}
您的规范无效。mymodel
应该是包含modelHeader
和modelPayload
对象的数组,还是包含modelHeader
和modelPayload
属性的组合对象?我的规范没有抛出错误,因此我相信它是有效的。我希望mymodel是一个使用“allOf”的对象,但它在yaml中抛出了错误,所以我将其更改为数组。产品功能与之配合使用*将其更改为字典。我不会为YAML规范操心太多。您的YAML是有效的,它是swagger对解析的YAML所做的解释,带有特定的swagger-ish期望,这是错误的。谢谢@Helen。我不知道为什么Swagger editor没有为我使用项目抛出错误。但allOf现在对我有用。谢谢你指出!它以前不起作用可能是因为一些不相关的更改:)