gpt4 book ai didi

swagger-php - Swagger PHP 对象而不是数组

转载 作者:行者123 更新时间:2023-12-01 14:19:45 25 4
gpt4 key购买 nike

模型的 swagger 标记示例

* @SWG\Model(
* id="UserSubscriptionSearchResultsFilter",
* @SWG\Property(name="total", type="integer"),
* @SWG\Property(name="perPage", type="integer"),
* @SWG\Property(name="query", type="string"),
* @SWG\Property(name="sortColumn", type="string"),
* @SWG\Property(name="sortDirection", type="string"),
* )
*/

/**
* @SWG\Model(
* id="UserSubscriptionSearchResults",
* @SWG\Property(name="results",type="array", items="$ref:UserSubscriptionRepository"),
* @SWG\Property(name="total", type="integer"),
* @SWG\Property(name="filter",type="object", uniqueItems="$ref:UserSubscriptionSearchResultsFilter")
* )
*/

现在架构看起来像:

"filter": "object"

相反,我想看到的是:

"filter":  {
"total": 0,
"perPage": 0,
"query": "",
"sortColumn": "",
"sortDirection": ""
}

现在我只能创建一个看起来与此类似的数组对象,但它仍然不是完整的规范。

我在这里读过类似的问题: https://github.com/swagger-api/swagger-spec/issues/38 https://github.com/mission-liao/pyswagger/issues/18

但我还没有找到明确的答案。

最佳答案

在您的情况下,Swagger 2.0 中的正确模式应该是这样的:

"definitions": {
"filter": {
"type": "object",
"properties": {
"total": {
"type": "integer"
},
"perPage": {
"type": "integer"
},
"query": {
"type": "string"
},
"sortColumn": {
"type": "string"
},
"sortDirection": {
"type": "string"
}
}
}
}

我猜你使用的项目是swagger-php .这是他们声明来自 here 的模型的示例的引述:

<?php
namespace PetstoreIO;
/**
* @SWG\Definition(
* @SWG\Xml(name="Category")
* )
*/
class Category
{
/**
* @SWG\Property(format="int64")
* @var int
*/
public $id;
/**
* @SWG\Property()
* @var string
*/
public $name;
}

从 1.2 升级到 2.0 时,术语从“模型”更改为“定义”。

关于swagger-php - Swagger PHP 对象而不是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31038600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com