Репозиторий для выполнения запросов Doctrine Dbal внутри модуля

Репозиторий для выполнения запросов Doctrine Dbal внутри модуля

11.08.2018 08:29:39 Просмотров 59 Источник

Моя цель-иметь возможность выполнять SQL-запросы из модуля PS 1.7.4.2. Рекомендуется формировать документы для использования служб Doctrine Dbal.

Из документации:

Даже если старый способ извлечения данных все еще действителен (Продукт:: getProducts или через веб-сервис), мы хотели бы познакомьтесь с лучшей практикой здесь: использование репозитория и получить поездку Объектная модель. Это имеет много преимуществ, вы полагаетесь на базу данных вместо модели и вы будете иметь лучшие характеристики и контроль на ваши данные.

Я не думаю, что он уважает философию PS, Если я помещаю класс репозитория в src/Prestashop/Entity/Repository. So, где поместить класс репозитория?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90562252_51802121
@Rolige. Моя ошибка, я исправил ее . Спасибо, что ответили. Я согласен, что я могу использовать объект DB внутри модуля, но мне нужно использовать доктрину DBAL, поскольку она рекомендуется документами. Вид движущейся Symfony. Я что-то упустил?
https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90562828_51802121
Вы пытаетесь сделать что-то в некоторых из новых современных страниц бэк-офиса?
https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90575022_51802121
Вы находитесь в неправильном пути, во-первых, вы никогда не должны изменять структуру базовой таблицы, потому что вы убиваете будущие обновления. Если вы хотите добавить дополнительное поле в продукт, вам нужно сделать это с вашими собственными дополнительными таблицами.
https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90577195_51802121
Uff, я думаю, вам нужно прочитать много документации для создания модуля, как он должен быть подключен в соответствии с вашими потребностями и т. д. и т. д. Я не могу объяснить вам, что полное создание модуля-это что-то сумасшедшее. И если вы хотите получить какой-то совет, я рекомендую вам начать с простого, а не создавать его с помощью новой доктрины. Вы также можете поддерживать вас с помощью многих модулей, которые включены в PrestaShop, а также онлайн-документации.
https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90577651_51802121
@Rolige, я уже создал модуль без доктрины. Я хочу использовать современный способ создания модуля, используя репозиторий в качестве сервиса, который я могу получить в любом месте с помощью Symfony Service container. Спасибо, что уделили мне время.
https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module#comment90577656_51802121
Кто-нибудь сумел реализовать это: devdocs.prestashop.com/1.7/modules/concepts/hooks/... ???

Ответы - Репозиторий для выполнения запросов Doctrine Dbal внутри модуля / Repository to execute Doctrine Dbal queries inside module

Является ответом!
Adib Aroui

15.08.2018 05:11:23

Проблема решена путем выполнения composer initвнутри модуля и сопоставления srcв модуле с пространством имен Foo.

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

Вы можете дополнительно определить свои собственные классы репозитория как сервисы и получить их из контейнера.

https://stackoverflow.com/questions/51802121/repository-to-execute-doctrine-dbal-queries-inside-module/51860374#comment93035878_51860374
Так куда же девать класс репозитория? :)
Закрыть X