Actions в контроллере разбиты на две группы создание, редактирование, удаление данных
1. putAction(PUT), postAction(POST), deleteAction(DELETE), registryAction(POST)
получение данных
2. criteriaAction(GET)
каждый метод работает со своим менеджером
1. CommandManagerInterface
2. QueryManagerInterface
При переопределении штатного класса сущности, дополнение данными осуществляется декорированием, с помощью MediatorInterface
группы сериализации
1. API_GET_HEADER, API_CRITERIA_HEADER - получение заголовков
2. API_POST_HEADER - создание заголовков
3. API_PUT_HEADER - редактирование заголовков
4. API_DELETE_HEADER - удаление заголовков
получение:
заголовок(ки) найдены HTTP_OK 200
ошибки:
если заголовок не найден HeaderNotFoundException возвращает HTTP_NOT_FOUND 404
если заголовок не прошел валидацию HeaderInvalidException возвращает HTTP_UNPROCESSABLE_ENTITY 422
все остальные ошибки возвращаются как HTTP_BAD_REQUEST 400
Формат ответа от сервера содержит статус код и имеет следующий стандартный формат
[
TypeModel::TYPE => string,
PayloadModel::PAYLOAD => array,
MessageModel::MESSAGE => string,
];
где TYPE - типа ответа
ERROR - ошибка
NOTICE - уведомление
INFO - информация
DEBUG - отладка
MESSAGE - от кого пришло сообщение PAYLOAD - массив данных
показать проблемы кода
vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.dist.php --verbose --diff --dry-run
применить исправления
vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.dist.php
COMPOSER_NO_DEV=0 composer install
/usr/bin/php vendor/phpunit/phpunit/phpunit --bootstrap src/Tests/bootstrap.php --configuration phpunit.xml.dist src/Tests --teamcity
/usr/bin/php vendor/phpunit/phpunit/phpunit --bootstrap src/Tests/bootstrap.php --configuration phpunit.xml.dist src/Tests/Functional/Controller/ApiControllerTest.php --filter "/::testPost( .*)?$/"
PROPRIETARY