Адаптер Symfony
Адаптер Symfony связывает ADP Kernel и API с Symfony 6.4+ / 7.x / 8.x через Symfony Bundle.
Установка
composer require app-dev-panel/adapter-symfonyРегистрация бандла
Зарегистрируйте бандл в config/bundles.php:
return [
// ...
AppDevPanel\Adapter\Symfony\AppDevPanelBundle::class => ['dev' => true, 'test' => true],
];Конфигурация
Создайте config/packages/app_dev_panel.yaml:
app_dev_panel:
enabled: true
storage:
path: '%kernel.project_dir%/var/debug'
history_size: 50
collectors:
request: true
exception: true
log: true
event: true
doctrine: true # требуется doctrine/dbal
twig: true # требуется twig/twig
security: true # требуется symfony/security-bundle
cache: true
mailer: true # требуется symfony/mailer
messenger: true # требуется symfony/messenger
code_coverage: false # opt-in; требуется pcov или xdebug
ignored_requests:
- '/_wdt/*'
- '/_profiler/*'
- '/debug/api/**'
api:
enabled: true
allowed_ips: ['127.0.0.1', '::1']Коллекторы
Поддерживает все коллекторы Kernel, а также специфичные для Symfony: шаблоны Twig, Security (пользователь/роли/файрвол), кеш, Messenger, переводчик и запросы к БД через Doctrine.
Интеграция с переводчиком
Адаптер автоматически декорирует TranslatorInterfaceSymfony\Contracts\Translation\TranslatorInterfaceSymfony Translation Contract. Translates messages using message catalogs. Symfony через SymfonyTranslatorProxyAppDevPanel\Adapter\Symfony\Proxy\SymfonyTranslatorProxyDecorates Symfony's TranslatorInterface to feed translation lookups to TranslatorCollector. в compiler pass. Все вызовы trans() перехватываются и записываются в TranslatorCollectorAppDevPanel\Kernel\Collector\TranslatorCollectorCaptures translation lookups during request execution. — изменения кода не требуются. Подробности на странице Переводчик.
Инспектор базы данных
При наличии doctrine/dbal инспекция схемы БД осуществляется через DoctrineSchemaProviderAppDevPanel\Adapter\Symfony\Inspector\DoctrineSchemaProviderProvides database schema inspection via Doctrine DBAL.. Без Doctrine используется NullSchemaProviderAppDevPanel\Adapter\Symfony\Inspector\NullSchemaProviderNo-op schema provider for when no database is configured. Returns empty results instead of causing a 500 error..