PrestaShop работает с Doctrine и Entites - PullRequest
0 голосов
/ 30 января 2020

Hello :) При запуске: я использую PrestaShop 1.7.6.2 и MySQL 5.6 и PHP 7.2

Я хочу создать модуль по-новому с Symfony Controller и Entites без ObjectModel ( так как, скажем, один из разработчиков PrestaShop: Пабло Борович - ObjectModel устарела)

Итак, при запуске я создаю простой модуль, доступный по ссылке https://github.com/DarkSidePro/testmodule

Контроллер и Маршрутизация работает отлично, проблема в том, что когда я пытаюсь использовать enity manager

$entityManager = $this->container->get('doctrine.orm.entity_manager');
$testRepository = $entityManager->getRepository(TestmoduleTest::class);
$test = $testRepository->findAll();

, и у меня возникает такая ошибка:

Класс 'DarkSide \ Testmodule \ Entity \ TestmoduleTest' не был нашел в цепочке настроенные пространства имен PrestaShopBundle \ Entity

Может я что-то не так делаю? Но сделать c из prestashop of coures - это отстой о новом способе создания модулей PrestaShop

Ищу 4 справки :) Спасибо всем :)

Ответы [ 2 ]

0 голосов
/ 30 января 2020

Хорошо, проблема в другом пути :) В этом случае у меня возникла проблема с моим классом репозитория (возможно, с конструктором этого класса), когда я удалил их модуль, начало работы. Проблема решена:)

0 голосов
/ 30 января 2020

Документация PrestaShop - полный беспорядок, связанный с обработкой репозиториев Symfony.

Doctrine ищет (по атрибуту конфигурации auto_mapping orm) присутствие вашей сущности в Prestashop Entity пространство имен, так как ваша сущность TestmoduleTest не существует, она не может быть найдена и, следовательно, загружена.

Возможно, вам придется зарегистрировать вашу сущность в следующем пространстве имен: namespace PrestaShop\Module\Testmodule\Entity;

Вы сможете узнать больше о том, как создать свой собственный класс репозитория в официальном productcomments модуле здесь .

...