Symfony 4 Добавление / обновление объектов из команды - PullRequest
0 голосов
/ 19 января 2020

У меня есть команда, которую я запускаю из CLI для импорта данных и создания записей.

$doctrine = $this->getContainer()->get('doctrine');
$em = $doctrine->getEntityManager();
/** @var PropertyRepository $propRepo */
$propRepo = $doctrine->getRepository(Property::class);
$propRepo->findOneBy(['id' => $property['PropertyId']])

Моя команда расширяет ContentAwareCommand (даже если она говорит, что она устарела, она действительно не нравится)

ТАК, как я могу запросить свои репозитории из этой команды?

1 Ответ

1 голос
/ 19 января 2020

Используйте внедрение зависимостей внутри вашей команды, вам нужно передать EntityManagerInterface вашему конструктору,

class SomeCommand extends ContainerAwareCommand
{
    private $em;
    function __construct(EntityManagerInterface $em)
    {
        $this->em = em;
        parent::__construct(); // you need to call the parent else command won't show up
    }
    // after this you are free to use entity manager in your command
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...