Команда doctrine: generate: entity устарела - PullRequest
0 голосов
/ 01 ноября 2018

ПРИМЕЧАНИЕ. Команда doctrine: generate: entity устарела. Чтобы узнать больше о различиях между анемичными и богатыми моделями, зайдите http://docs.doctrine -project.org / проекты / Доктрина-ОРМ / ен / последний / учебники / получить ING-started.html # добавления-поведение-к-сущностей. Если вы хотите сгенерировать ваши сущности, используйте make: entity --regenerate from Вместо MakerBundle.

1 Ответ

0 голосов
/ 08 ноября 2018

Я столкнулся с этим сообщением в проекте Symfony 3.4.

В сообщении рекомендуется использовать команду make:entity Symfony Maker Bundle вместо doctrine:generate:entities.

Пакет Symfony Maker Bundle совместим с Symfony 3.4, но не входит в комплект.

Решение № 1: проигнорируйте сообщение и продолжайте использовать doctrine:generate:entities, так как он только генерирует код и этот код не перестанет работать, если вы обновите Symfony позже и doctrine:generate:entities будет удален.

Решение №2: установите Symfony Maker Bundle и используйте предложенную команду замены: composer require symfony/maker-bundle --dev. (Мне также пришлось обновить doctrine/inflector)

https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html

Я бы лично пошел с решением № 1, если вы действительно используете Symfony 3.4. Пакет производителя кажется довольно суетливым в отношении местоположения и структуры, если ваши сущности и репозитории выглядят так, как есть.

Часть, касающаяся «различий между анемичной и расширенной моделями», похоже, является предупреждением о том, что команда make перезаписывает ваши методы получения и установки. Если у вас есть собственный код, вы можете его потерять.

...