Neon, dibi, modelLoader a připojení k databázi podle konfigurace z centrální databáze
- Spock
- Člen | 8
Ahoj,
jde mi především o to, zda je popsané řešení korektní:
Mám centrální databázi s konfiguracemi. Odtud si chci načíst údaje k připojení k „local“(!= localhost) databázi a následně vytvořit druhé připojení podle získané konfigurace.
V config.neon mám přístupy k centrální db a v modelLoaderu bych
chtěl načíst údaje pro připojení k další databázi (podle umístění
index.php) a přidat service pro komunikaci právě s ní.
Tzn: budu mít service pro centrální db a servise pro „local“.
Je korektní řešit tuto logiku v modelLoaderu?
(v příkladu jsem jednoduše vytvořil 2 stejné service a u jedné jen přepnul db pomocí ‚USE localDb‘, místo toho by mělo jít o vytvoření nového containeru s parametry pro dibi)
public function __construct(Container $container)
{
$modelContainer = new Container;
$container->projectDatabase->nativeQuery('USE localDb;');
$modelContainer->addService('database', $container->localDatabase);
$modelContainer->addService('centralDatabase', $container->centralDatabase);
$modelContainer->freeze();
$this->modelContainer = $modelContainer;
}
Děkuji za rady a případné nasměrování správnou cestou.