Poskytování konfigurace v závislosti na prostředí je docela běžný úkol a existuje několik dalších způsobů, jak to zvládnout.
Proměnné prostředí
V případě, že to prostředí umožňuje, můžete použít proměnné prostředí. Konfiguraci DB můžete snadno poskytnout pomocí DATABASE_URL
proměnná ve formě připojovacího řetězce DSN jako
mysql://user:[email protected]/production?encoding=utf8&timezone=UTC&cacheMetadata=true
Kuchařka> Konfigurace> Proměnné prostředí
Další konfigurační soubory
Další možností je načíst samostatné/další konfigurační soubory na základě aktuálního prostředí, takže můžete nasadit pouze ty soubory, které jsou skutečně vyžadovány pro konkrétní prostředí.
Configure::load('app', 'default', false);
// $enviroment needs to be validated /sanitzied in order to
// avoid loading arbitrary files from the config directory
Configure::load($enviroment, 'default', true);
Kuchařka> Konfigurace> Načítání dalších konfigurační soubory
Aliasing připojení
A je tu také aliasing připojení, CakePHP to dělá automaticky v testovacím prostředí. Řekněme, že máte default
a production
konfiguraci, můžete pak alias production
připojení jako default
ve vašem produkčním prostředí, takže všude, kde se váš kód pokusí použít default
připojení, bude ve skutečnosti používat production
jeden.
\Cake\DataSource\ConnectionManager::alias('production', 'default');
API> \Cake\DataSource\ConnectionManager::alias()