Symfony 4, способ создания сущностей из существующей базы данных?

С Symfony 3 и его консолью мы можем генерировать сущности из уже существующей базы данных с помощью команды "php bin/console doctrine:mapping:import" (очень полезно!).

Начиная с symfony 4, команде "./bin/console doctrine:mapping:import" нужно имя пакета, но сейчас symfony 4 не работает с пакетом.

С новой версией Symfony, есть ли способ, который я не видел для создания сущностей из существующей базы данных (mysql в качестве примера)? Или я должен ждать новой версии доктрины, чтобы иметь "doctrine:mapping:import", совместимую с Symfony 4?

Я нашел (n) (некрасивое) решение еще. Я развертываю одноразовое Symfony 3, связываю Symfony 3 с моей базой данных и генерирую сущности в связке. Затем я копирую генерирует файлы в Symfony 4. Это ужасно, но работает, ха-ха

1 ответ

Ты можешь использовать

php bin/console doctrine:mapping:convert --from-database annotation ./src/Entity

который должен создавать объекты на основе настроек базы данных. Не забудьте добавить пространства имен, и вам все равно нужно будет добавить методы получения и установки, но основная часть свойств, включая аннотации и некоторые отношения, уже включена. ( Источник)

Также обратите внимание, что Doctrine больше не будет поддерживать это в следующей версии Doctrine. Как написано в документации Symfony

Более того, эта функция для создания сущностей из существующих баз данных будет полностью удалена в следующей версии Doctrine.

Другие вопросы по тегам