Php @ApiProperty openapi_上下文类型数组示例

Php @ApiProperty openapi_上下文类型数组示例,php,annotations,openapi,api-platform.com,Php,Annotations,Openapi,Api Platform.com,是否可以为@ApiProperty创建openapi_上下文“type”=“array”?使用注释编写sucha数组的“示例”值的正确方法是什么?我正在使用OAS3 /** * @ApiProperty( * attributes={ * "openapi_context"={ * "type"="array", * "example"="array example goes here" * } * } * ) *

是否可以为@ApiProperty创建openapi_上下文“type”=“array”?使用注释编写sucha数组的“示例”值的正确方法是什么?我正在使用OAS3

/**
 * @ApiProperty(
 *     attributes={
 *      "openapi_context"={
 *        "type"="array",
 *        "example"="array example goes here"
 *      }
 *     }
 * )
 *
 * @var array<array>
 */
那里没有方括号

我不确定是否理解你的问题,因为我不知道你数组的内容。如果这没有回答您的问题,请随意添加评论

数组类型

中记录了由定义的基本数据类型。这里没有提到数组,当然是因为它不是一种原始数据类型

因为,如果您查看,模式的描述就开始了。接受数组()。 因此,可以为@ApiProperty创建openapi_上下文“type”=“array”

示例 如果你看这个例子,那么()是没有规范的对象。所以你可以写你想要的。我不是一个超级粉丝,很多文档都使用示例来提供公认的价值

所以,我使用了尊重OAS3的招摇。数组是,您可以在注释中找到一些示例。Somme示例在“注释”中定义。这些示例来自于Swagger文档

  • 整数数组示例
    “[1,2,3,4]”
  • 对象数组的示例
    “[{“id”:5},{“id”:8}]”
  • 整数数组的示例
    “[[1,2],[3,4]]”
  • 等等
对于多维数组,这是虚张声势上下文:

#[[1,2],[3,4]]
类型:数组
项目:
类型:数组
项目:
类型:整数
注释为:

/**
*@ApiProperty(
*属性={
*“openapi_上下文”={
*“类型”=“数组”,
*“items”={“type”=“array”,“items”={“type”={“integer”,“string”}},
*例如“=”[[1,'foo'],['bar',4,5]]
*      }
*     }
* )
*@ORM\Column(type=“array”)
*/
我创建了一个具有属性的实体,该属性是包含字符串或整数的多维数组。(数组的数组(字符串或整数))和我截图的招摇过市的文件。看起来很好

样本结果为:

生成的架构是:


,您可以找到阵列的答案。

Hi@alexandre Tranchan感谢您的回复。我想定义一个多维关联数组的示例,并且我想在注释中专门对其进行di,但不知怎么的,我找不到在注释中构建此示例的正确语法。我编辑了我的答案以添加语法示例。我希望它能帮助你。@alexandre trenchant当我使用你的例子时,我得到了400Error:Bad请求“hydra:description”:“templateVariables”属性的类型必须是“array\”,“string\”给定的。当然,templateVariables是我属性的名称。你期望的值不是数组,而是对象。
    "my_array": {
      "key" : {
        "key1" : "value 1",
        "key2" : "value 2",
        "key3" : "value 3"
       }
     }