Foros del Web » Programando para Internet » PHP » Symfony »

Varias bases de datos symfony

Estas en el tema de Varias bases de datos symfony en el foro de Symfony en Foros del Web. Buenos días! Tengo una consulta sobre la gestión de varias BDs desde una implementación symfony tipo SAAS. Se que puedo utilizar varias BDs tal este ...
  #1 (permalink)  
Antiguo 03/11/2016, 03:36
 
Fecha de Ingreso: marzo-2005
Mensajes: 51
Antigüedad: 19 años, 8 meses
Puntos: 0
Pregunta Varias bases de datos symfony

Buenos días!

Tengo una consulta sobre la gestión de varias BDs desde una implementación symfony tipo SAAS.

Se que puedo utilizar varias BDs tal este código que encontré en los tutoriales de symfony:

connections:
default:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: null
database_name: bd1
database_user: root
database_password: 12345

connections:
cliente:
database_driver2: pdo_mysql
database_host2: 127.0.0.1
database_port2: null
database_name2: bd2
database_user2: root
database_password2: 12345

Y luego gestionar doctrine mediante:

$em = $this->getDoctrine()->getManager('nombre_bd');

El tema es el siguiente: yo tengo una APP SAAS donde por cada inquilino que se apunte, crearé una BD para él mediante un script.

¿Qué es lo que busco?

Pasarle parámetros de conexión a doctrine. Es decir, que mediante una variable que contendrá la BD a la que quiero apuntar yo pueda decirle:

$em = $this->getDoctrine()->getManager($miVariable);

Y que en la configuración del parameters.yml pueda decirle:

connections:
cliente:
database_driver2: pdo_mysql
database_host2: 127.0.0.1
database_port2: null
database_name2: $miVariable
database_user2: root
database_password2: 12345

(Lo mismo, si se puede, necesitaría para el BD_user y el BD_pass o cualquiera de los otros parámetros).

Esto es posible en symfony? No sé si me he explicado bien.

Un saludo y gracias!
  #2 (permalink)  
Antiguo 13/01/2017, 08:14
Avatar de cluster28  
Fecha de Ingreso: enero-2008
Ubicación: Donostia - San Sebastián
Mensajes: 756
Antigüedad: 16 años, 10 meses
Puntos: 32
Respuesta: Varias bases de datos symfony

Prueba esto:

Código PHP:
$conn $this->getDoctrine()->getManager()->getConnection();
$conn->close();
$params $conn->getParams();
$params['dbname'] = $miVariable//En este array puedes cambiar también los demás parámetros
$conn->__construct($params$conn->getDriver(), $conn->getConfiguration(), $conn->getEventManager()); 

Etiquetas: bases
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:27.