2013-03-01 6 views
0

В Symfony 2.0 мне нужно изменить БД для конкретного пользователя, пока он не выйдет из системы, но код тот же.Использование другой базы данных при входе пользователя в систему

Возможно ли это?

+3

Я не думаю, что это отличный дизайн db, если вам нужно изменить базу данных, если пользователь вошел в систему. –

ответ

0

Возможно, но это не должно быть сделано так, как вы его описали.

Вам всегда потребуется соединение, которое не изменится: база данных, которая будет обрабатывать аутентификацию.

Тогда для каждого пользователя может быть определенная база данных. После входа в систему вы должны иметь данные учетной записи (данные базы данных), необходимые для подключения к базе данных пользователя.

После того, как вы его, используйте один из методов, описанных в

Посмотрите: Symfony 2 : multiple and dynamic database connection

Это должно быть довольно просто.

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

0

Заканчивать Symfony2, Dynamic DB Connection/Early override of Doctrine Service

Это небольшое дублирование других, но конкретно с использованием запросом Params, и ответ содержит более подробную информацию в этом подключение услуг. Не уверен, что это полезно по сравнению с другим ответом, но все равно проверьте его.

Смежные вопросы