我在yii2应用程序中运行了一个REST api。
我从我的AR模型扩展我的api模型,并使用CustomerBack.CustomerType
函数来定义api响应字段。
fields()
我的activecontroller是最简单的实现
/**
* @SWG\Definition(
* type="object"
* )
*/
class Person extends \common\models\Person implements Linkable {
public function fields() {
return ['id',
'name',
'first-name' => 'first_name'
];
}
public function getLinks() {
return [
Link::REL_SELF => Url::to(['person/view', 'id' => $this->id], true),
];
}
到目前为止,一切正常。然后我想添加Swagger-php来记录我的API: 我使用https://packagist.org/packages/light/yii2-swagger。配置工作,我有我的swagger-ui page / json。
下一步是开始添加文档...但是在所有Swagger-php示例或https://github.com/lichunqiang/yii2-swagger-demo上,注释都在modelfields和控制器方法上。
问题是由于ActiveRecord和use yii\rest\ActiveController;
/**
* @SWG\Info(title="My First API", version="0.1")
*/
class PersonController extends ActiveController {
public $modelClass = 'api\modules\v1\models\Person';
}
函数,代码中没有显式的。
是否有办法结合swagger-php和ActiveController?