менеджер сущностей doctrine — невозможно сохранить данные в БД при запуске через консольное приложение

Я работаю над пакетным процессом, и он запускается через командную строку. В консольном приложении я использую $this->getContainer()->get('doctrine.orm.entity_manager') получить доступ к доктрине ORM где как из любого файла контроллера $emr = $this->getDoctrine()->getManager(); используется. Этот второй метод не будет работать для консоли / командной строки.

Если я пытаюсь использовать любую функцию (функции в контроллере), которая persists или же save данные в БД дают ошибку.

private function addActionForReject($docketNumber, $emr)
{
$mAction = new Action();

$date = new \DateTime();
$mAction->setActionId(ConstantRest::NO_FURTHUR_REVIEW_ACTION_ID);
.....
$emr->persist($mAction );

$emr->flush();

Эта функция выше в контроллере, и в командном файле я создал экземпляр этого. Используя экземпляр, который я назвал addActionForReject мимоходом $emr объект, который является $this->getContainer()->get('doctrine.orm.entity_manager') в этом случае.

Но это будет давать ошибку PHP Fatal error: Call to a member function has() on null in C:\xampp\htdocs\GR\
vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Controller\Controller.
php on line 288

ПРИМЕЧАНИЕ: я могу получить данные из БД. проблема только тогда, когда я пытаюсь сохранить данные объекта.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector