Возможно ли иметь разные подключения к базе данных для страны, но с одинаковыми объектами / моделью на Symfony 4 или 5? - PullRequest
0 голосов
/ 21 апреля 2020

Используя Symfony 4 или 5, я пытаюсь создать одно приложение, которое прозрачно общается с doctrine через менеджер сущностей, используя EM по умолчанию, но меняя соединение в зависимости от локали.

Идея состоит в том, чтобы Как проверить локаль во время выполнения и выбрать правильное соединение БД, которое будет использоваться для всего запроса. Таким образом, $doctrine->getEntityManager() должен возвращать менеджера с правильным соединением как для использования в репозиториях, так и с помощью аутентификации брандмауэра и любой другой службы, которая подключается к БД.

БОНУС должен быть возможен при запуске команд для укажите, какое соединение использовать.

Подробности:
- Symfony 4 или выше.
- PHP 7>.
- Одна и та же модель используется для каждой страны.
- Для запросов http локаль находится в URL.
- URL для всех баз данных находится в файлах env

Моя собственная попытка сделать это:

Если попытаться расширить Doctrine\DBAL\Connection сделать обертку, используя конфигурацию доктрин, но не смогли найти способ изменить все параметры подключения. (измените URL на ведущие и ведомые БД) Для запросов и консоли.

Любая помощь очень ценится

...