De eenvoudigste oplossing is om uw databaseconfiguratie tijdens runtime in te stellen. Laravel verwacht mogelijk dat deze instellingen worden geladen vanuit de config/database.php
bestand, maar dat betekent niet dat je ze later niet kunt instellen of wijzigen.
De configuratie geladen van config/database.php
wordt opgeslagen als database
in Laravel-configuratie. Dit betekent dat de connections
array binnen config/database.php
wordt opgeslagen op database.connections
.
U kunt deze verbindingen dus eenvoudig als volgt overschrijven/wijzigen:
Config::set("database.connections.mysql", [
"host" => "...",
"database" => "...",
"username" => "...",
"password" => "..."
]);
Vanaf dat moment, alle welsprekende modellen die deze mysql
. gebruiken verbinding zal deze nieuwe databaseverbindingsconfiguratie gebruiken.
Ik raad aan om dit indien mogelijk bij een serviceprovider te doen.