Swagger-php 在每个模型 属性 上添加 "schema" 属性
Swagger-php adding a "schema" property on every Model property
(这是我的第一个堆栈溢出 post 所以放轻松,哈哈)
我正在使用:
-OpenApi (v3)
-L5-Swagger(swagger-php & swagger-ui的包装)
我正在使用注释生成 OpenAPI 规范。正在生成规范,控制台没有错误。但是,在每个模型的每个 属性 中,一旦生成,就会添加一个额外的 属性。
我试过:
1.重写模型,
2. 以不同方式重写属性
我的一个模型和 "id" 属性:
/**
* Class ActionPlan
*
* @OA\Schema(
* description="Action Plans",
* title="Action Plan Schema",
* required={
* "id",
* "name",
* "organization_id",
* "assessment_period_id",
* "completed",
* "created_by",
* "updated_by"
* },
* )
*
* @OA\Property(
* property="id",
* type="integer",
* format="int32",
* description="Action Plan ID"
* )
生成的内容如下:
"ActionPlan": {
"title": "Action Plan Schema",
"description": "Action Plans",
"required": [
"id",
"name",
"organization_id",
"assessment_period_id",
"completed",
"created_by",
"updated_by"
],
"properties": {
"id": {
"schema": "ActionPlan",
"description": "Action Plan ID",
"type": "integer",
"format": "int32"
},
我在做什么,生成了 "schema" 属性?
当我将规范文件放入 Swagger 编辑器时,它说 ActionPlan.properties.id 不应该有额外的属性。附加 属性:架构。
我只是想知道 make create "schema" 属性.
发生了什么
提前致谢!
据我了解,这个 "error" 实际上根本不是错误。这实际上是一个非常有用的功能,我只是不知道!当在其对应的 OA\Schema 对象之外创建 OA\Property 时,每个 属性 中都会添加一个 "schema" 属性,我想,创建一个引用,所以我们因为开发人员不会对 OA\Schema 和 属性 属于哪个感到困惑。要删除这个 "schema" 属性,只需要移动所有 OA\Properties inside 它们对应的 OA\Schema 对象。像这样..
/**
* Class ActionPlan
*
* @OA\Schema(
* description="Action Plans",
* title="Action Plan Schema",
* required={
* "id",
* "name",
* "organization_id",
* "assessment_period_id",
* "completed",
* "created_by",
* "updated_by"
* },
* @OA\Property(
* property="id",
* type="integer",
* format="int32",
* description="Action Plan ID"
* )
* )
*/
(这是我的第一个堆栈溢出 post 所以放轻松,哈哈)
我正在使用:
-OpenApi (v3)
-L5-Swagger(swagger-php & swagger-ui的包装)
我正在使用注释生成 OpenAPI 规范。正在生成规范,控制台没有错误。但是,在每个模型的每个 属性 中,一旦生成,就会添加一个额外的 属性。
我试过:
1.重写模型,
2. 以不同方式重写属性
我的一个模型和 "id" 属性:
/**
* Class ActionPlan
*
* @OA\Schema(
* description="Action Plans",
* title="Action Plan Schema",
* required={
* "id",
* "name",
* "organization_id",
* "assessment_period_id",
* "completed",
* "created_by",
* "updated_by"
* },
* )
*
* @OA\Property(
* property="id",
* type="integer",
* format="int32",
* description="Action Plan ID"
* )
生成的内容如下:
"ActionPlan": {
"title": "Action Plan Schema",
"description": "Action Plans",
"required": [
"id",
"name",
"organization_id",
"assessment_period_id",
"completed",
"created_by",
"updated_by"
],
"properties": {
"id": {
"schema": "ActionPlan",
"description": "Action Plan ID",
"type": "integer",
"format": "int32"
},
我在做什么,生成了 "schema" 属性?
当我将规范文件放入 Swagger 编辑器时,它说 ActionPlan.properties.id 不应该有额外的属性。附加 属性:架构。
我只是想知道 make create "schema" 属性.
发生了什么提前致谢!
据我了解,这个 "error" 实际上根本不是错误。这实际上是一个非常有用的功能,我只是不知道!当在其对应的 OA\Schema 对象之外创建 OA\Property 时,每个 属性 中都会添加一个 "schema" 属性,我想,创建一个引用,所以我们因为开发人员不会对 OA\Schema 和 属性 属于哪个感到困惑。要删除这个 "schema" 属性,只需要移动所有 OA\Properties inside 它们对应的 OA\Schema 对象。像这样..
/**
* Class ActionPlan
*
* @OA\Schema(
* description="Action Plans",
* title="Action Plan Schema",
* required={
* "id",
* "name",
* "organization_id",
* "assessment_period_id",
* "completed",
* "created_by",
* "updated_by"
* },
* @OA\Property(
* property="id",
* type="integer",
* format="int32",
* description="Action Plan ID"
* )
* )
*/