生成.json时出现SWAGGER-PHP错误我无法加载模型中的值

时间:2018-03-14 20:16:47

标签: swagger swagger-ui swagger-php

大家好,我试图消除生成swagger.json时仍然存在的错误,错误说: [WARN] [语法错误]预期值,得到' @'在\ App \ Http \ Controllers ......以及我的代码中,OHH iM正在使用LUMEN。

/**
 * @SWG\Put(
 *   path="/v1/resource/{id1}/rsc/{id2}",
 *   summary="Update ...",
 *   operationId="update",
 *   tags={"Update"},  
 *
 *
 *   @SWG\Response(response=200, description="Json [client] "),
 *   @SWG\Response(response=404, description="Recurso no encontrado"),
 *   @SWG\Response(response=500, description="[error] Error interno del servidor"),
 *   @SWG\Parameter(
 *     name="id1",
 *     in="path",
 *     description="Id1.",
 *     required=true,
 *     type="integer"
 *   ),
 *   @SWG\Parameter(
 *     name="id2",
 *     in="path",
 *     description="Id2",
 *     required=true,
 *     type="integer"
 *   ),
 *   @SWG\Parameter(
 *     name="JSON update body",
 *     in="body",
 *     description="Request.",
 *     required=true,
 *     @SWG\Schema(type="array",@Model(type=vendor\LibModel\DAO\src\Model\Hospital))
 *   )
 *  )
 */
 public function update($id1,$id2, Request $request){...}

当我检查json没有生成定义时 - > "定义":{} 我的模型以下面的方式定义它,我不知道问题是我的模型是否在不同的命名空间下,因为它被定义为供应商或我缺乏的声明:

/**
 * Class Hospital
 *
 *
 * @SWG\Definition(
 *   definition="Hospital"
 * )
 *
 */
class Hospital extends Model
{

    /**
     * @SWG\Property(format="string")
     * @var string
     */
    protected $name;

    /**
     * @SWG\Property(format="string")
     * @var string
     */
    protected $email;

..并且在我看来是错误的时候出现错误...我认为这是因为它没有加载模型的值,感谢谁能帮助我

1 个答案:

答案 0 :(得分:0)

教条解析器抱怨@Model 不是 swagger-php的一部分。

swagger-php表示法是:

 * @SWG\Parameter(
 *     name="JSON update body",
 *     in="body",
 *     description="Request.",
 *     required=true,
 *     @SWG\Schema(
 *         type="array",
 *         @SWG\Items(ref="#/definitions/Hospital")
 *     )
 * )

我还没有使用NelmioApiDocBundle(使用@Model注释)检查他们的指南,看看如何设置它。