Symfony4: динамически подключаться к базе данных, используя URL - PullRequest
0 голосов
/ 08 января 2019

Я хочу подключиться к базе данных, используя параметр, указанный в URL-адресе, например:

www.mywebsite.com/DATABASE_1/

Это перенаправит на страницу входа, используя эту «DATABASE_1» в качестве базы данных для подключения.

Я новичок в Symfony и работаю с контроллерами, я всю жизнь был разработчиком SQL и пробую свои силы в некоторых новых вещах. У меня уже есть форма входа с аутентификацией, которая отлично работает с использованием документов Symfony с базой данных, настроенной в файле .env (https://symfony.com/doc/4.0/security.html).

Ответы [ 2 ]

0 голосов
/ 22 мая 2019

Вы не должны подключаться к базе данных с вашего контроллера и обрабатывать подключение к базе данных напрямую. Как это работает, объявляет конфигурацию для Doctrine в config / packages / doctrine.yaml. Доктрина подключается к базе данных самостоятельно. Например, для работы с базой данных в контроллерах вам необходимо получить экземпляр Doctrine. Как это:

$post = $this->getDoctrine() ->getRepository(Post::class) ->findOneBy(['slug' => $postSlug]);

И тогда вы можете легко получить что-то из базы данных через ваш Repository.

Проверьте эту ссылку:
https://symfony.com/doc/current/doctrine.html

0 голосов
/ 08 января 2019

Я не уверен в этом, но, полагаю, вы могли бы указать VirtualHost, что указали бы на свои URL-адреса, и добавить другие ENV параметры, содержащие строку подключения к доктрине.

По этой ссылке есть пример установки параметра Env в VirtualHost

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...