För att ändra inställningar i en annan konfiguraionts split så måste vi först växäla över till den men settings.php Environment Gotcha. Vi kan inte bara klicka i GUI och ändra.
Anledningen till att du inte kan aktivera live-konfigurationsinställningarna i användargränssnittet är att settings.php filen åsidosätter användargränssnittets klick. Så du måste gå till din fil och byt miljövariabeln.
Så här är vad jag gör.
I settings.local.php sätter jag mijövariabeln:
$env = 'dev';
I settings.php har sedan
$env = 'prod';
if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
include $app_root . '/' . $site_path . '/settings.local.php';
}
switch ($env) {
case 'prod':
$config['config_split.config_split.staging']['status'] = FALSE;
$config['config_split.config_split.dev']['status'] = FALSE;
$config['config_split.config_split.prod']['status'] = TRUE;
break;
case 'dev':
case 'test':
default:
$config['config_split.config_split.staging']['status'] = FALSE;
$config['config_split.config_split.dev']['status'] = TRUE;
$config['config_split.config_split.prod']['status'] = FALSE;
break;
case 'staging':
$config['config_split.config_split.staging']['status'] = TRUE;
$config['config_split.config_split.dev']['status'] = FALSE;
$config['config_split.config_split.prod']['status'] = FALSE;
break;
}
Så först sätter jag en standard miljö, prod, sen läser jag in settings.local.php i vilken jag sätter vad det ska vara. På det här sättet så blir det prod om jag glömmer sätta miljövariabeln.
När jag sen vill växla är det här flöder jag följer.
Byt miljövariabeln i settings.local.php
joe settings.local.php
Rensa cachen:
drush cr
Ladda all din konfiguration från den nya miljön till din lokala
drush cim
Aktivera moduler ändra det du ska ändra. Lägg till det som ska vara i den aktuella config spliten. Därefter exporterar vi.
drush cex
Ändra tillbaka miljövariabeln, rensa cachen och importera gamla konfigen igen.
drush cr
drush cim
Sen kan vi importera inställningarna från prod miljön om vi till exempelt har aktiverat nya moduler som vi också behöver i dev men med andra inställningar.
drush csim prod
Därefter kan vi exportera inställningar till den miljön och de finns sparade där.
drush cex