Swagger-php на Yii2 ActiveController
В моем приложении yii2 запущен API REST. Я расширяю свою модель API от моей модели AR и использую fields()
функция для определения полей ответа API.
/**
* @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),
];
}
Мой activecontroller- самая простая реализация
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 для документирования своего API: я использую https://packagist.org/packages/light/yii2-swagger. Конфигурация работает, и у меня есть сваггер-пользовательская страница / JSON.
Следующий шаг - начать добавлять документацию... Но во всех примерах Swagger-php или на https://github.com/lichunqiang/yii2-swagger-demo аннотации находятся на полях модели и методах контроллера. Проблема в том, что они не указаны явно в коде из-за ActiveRecord и fields()
функция.
Есть ли способ совместить swagger-php и ActiveController?