2012-05-14 2 views
-2

Я пытаюсь создать приложение с несколькими арендаторами, используя Symfony2.Создание приложения с несколькими арендаторами с использованием Symfony2

Кто-нибудь знает, как выбрать базу данных для подключения к домену, к которому применяется приложение? например. company1.domain.com => db1, company2.domain.com => db2

Я нашел плагины, которые могут помочь, например, sfMultiTenantPlugin, но все, похоже, имеют недостатки.

Мне просто нужен файл parameters.ini, чтобы иметь другое значение database_name на основе домена.

+1

Возможно, я нашел решение. http://symfony.com/doc/current/cookbook/configuration/external_parameters.html. Использует параметры виртуального хоста apache для передачи имени базы данных и пароля. – Apot

+0

несколько баз данных * не * многопользовательская база данных –

+0

sfMultiTenantPlugin - это Symfony 1, а не Symfony2 – Acyra

ответ

0

Возможно, что-то вроде этого? Here

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

case "company1.domain.com": 
    $dbname = `db1`; 
    etc. 

(у меня нет опыта работы с Symfony2, но это звучало, как это было вне этого. Я могу ошибаться.)
Надеюсь, что это помогает.

+0

Этот пример - именно то, что я хочу сделать в чистом PHP, но symfony отделяет соединение с базой данных в файлах YAML и ini-файле, которые не являются скриптами. Возможно, я могу выбрать набор файлов YAML для загрузки с использованием этого скрипта. – Apot

+0

А теперь я понимаю. Я не рассматривал файлы Symfony2 или YAML, поэтому мне не нужна помощь. Я бы попробовал загрузить файл, как вы сказали. – akester

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