ORM Doctrine в Symfony 5 это прекрасный инструмент для работы с БД разных видов в ООП-стиле. Для эффективной и комфортной работы в Symfony 5 предусмотрено большое количество консольных команд.
Для работы с Doctrine, требуются определенные пакеты в зависимостях проекта. Их легко добавить выполнив 2 следующие команды:
composer require symfony/orm-pack
composer require --dev symfony/maker-bundle
Ниже будут представлены часто употребляемые консольные команды в Symfony 5 с описанием.
Для всех консольных команд, можно посмотреть подробный процесс выполнения, для этого требуется передать после консольной команды передать -vvv (ключ вербозно). Например подробно отследить ход выполнения миграций: php bin/console doctrine:migrations:migrate -vvv .
- php bin/console list doctrine
- Вывод всех возможных консольных команд для работы с Doctrine.
- php bin/console doctrine:query:sql -h
- Любая консольная команда с ключом -h выведет подробную справку по команде.
- php bin/console make:entity
- Создание новой Entity — класса сущности для таблиц в БД. Также команда позволяет добавить новые свойства в уже существующий Entity.
php bin/console doctrine:cache:clear Очистить кеш.
php bin/console doctrine:database:create Создание БД через Доктрину
php bin/console doctrine:database:drop Удаление БД через Доктрину
php bin/console doctrine:database:import Импорт файлов SQL непосредственно в базу данных.
php bin/console doctrine:ensure-production-settings Проверить, что Doctrine правильно настроена для production среды
php bin/console doctrine:fixtures:load Загрузка Fixtures в БД.
php bin/console doctrine:fixtures:load —append
php bin/console doctrine:fixtures:load —purge-with-truncate
php bin/console doctrine:query:sql -V
Команды Doctrine для работы с миграциями.
php bin/console make:migration Создание файлов миграции с SQL кодом
php bin/console doctrine:migrations:migrate Применяться весь код из классов миграций (будут применены только ранее не выполненные) (одним из вариантов использования: эту команду следует запускать на продакшене при развертывании).
php bin/console doctrine:migrations:execute —up 20190305164707 Применить конкретную миграцию, для этого после —up передаем аргументом номер миграции.
php bin/console doctrine:migrations:execute —down 20190305164707 Сделать откат ранее примененной конкретной миграции, для этого после —down передаем аргументом номер миграции.
php bin/console doctrine:migration:generate Создание шаблона файла миграции (будет без sql кода)