Estoy desarrollando un módulo que dependerá en gran medida de las consultas de bases de datos externas. ¿Existe alguna práctica recomendada para definir y utilizar una conexión de base de datos externa en un módulo?
Esta página me dice cómo hacer la conexión, pero no dónde colocarla en un módulo (¿gancho específico?), Así que solo tengo que definirla una vez. Además, ¿siempre es necesario hacer "db_set_active ('YourDatabaseKey');" o puedo pasar un argumento que establecerá el db para usar? Estoy usando Drupal 7.
Respuestas:
No hay un lugar en particular para colocar este código (gancho o módulo), simplemente póngalo donde lo necesite.
Por lo tanto, debe ir justo antes de sus consultas en la otra base de datos y justo después de restablecer la base de datos predeterminada.
Si todo su módulo se basará en la base de datos externa, simplemente colóquelo al comienzo de la primera función llamada para su módulo y al final de la última función.
Por supuesto, cada una de sus funciones debe ejecutarse en la base de datos externa y nada debe tener que consultar la base de datos predeterminada sin volver a cambiar.
El siguiente código fallaría:
Debe cambiar de un lado a otro:
fuente
Deberá agregar en
settings.php
ubicado/sites/default/
en la siguiente sintaxis// Drupal 6
// Drupal 7
Y después de esta configuración, puede usar db_set_active () para cambiar entre bases de datos.
fuente