我正在使用php中的swagger ui,我正在尝试映射json 以下
{
"category": {
"id": 0,
"name": "string"
}
}
我从swagger ui演示中尝试过,但无法像上面那样进行映射 json,我怎么能得到这个json映射,那将是什么注释? 请帮忙
我的招摇课是
/**
* @SWG\Definition(@SWG\Xml(name="MyFl"))
*/
class MyFl
{
/**
* @SWG\Property(format="int64")
* @var int
*/
public $id;
/**
* @SWG\Property(example="doggie")
* @var string
*/
public $name;
/**
* @SWG\Property(type="Category")
*/
public $category;
}
我的帖子api注释是:
/**
* @SWG\Post(
* path="/docs/fl",
* tags={"MY"},
* summary="Insert fl info",
* operationId="FL",
* produces={"application/xml","application/json"},
* @SWG\Parameter(in="body",name="body",description="Insert fl info",required=true,@SWG\Schema(ref="#/definitions/MyFl")
* ),
* @SWG\Response(response="default", description="successful operation")
* )
*/
通过这个我得到的模型架构如下:
但我想要json架构:
{
"category": {
"id": 0,
"name": "string"
}
}
请帮帮我..
答案 0 :(得分:1)
您的数据结构实际上是两个对象。第一个是具有一个属性的对象:“category”。那么“category”的值是另一个具有两个属性的对象:“id”和“name”。我很确定你需要将它们建模为两个独立的对象。
/**
* @SWG\Definition(@SWG\Xml(name="MyFl"))
*/
class MyFl
{
/**
* @SWG\Property(type=Category) <-- Don't know if this is the right way to reference another schema. You will have to check the documentation.
*/
public $category;
}
/**
* @SWG\Definition(@SWG\Xml(name="Category"))
*/
class Category
{
/**
* @SWG\Property(format="int64")
* @var int
*/
public $id;
/**
* @SWG\Property(example="doggie")
* @var string
*/
public $name;
}
希望有所帮助。