У меня есть приложение Symfony на Heroku с надстройками ClearDb. Мне нужно управлять приложением для тестирования и производства. Поэтому мне нужны две базы данных: одна для тестирования и одна для производства (принцип);
Я попробовал конвейер Heroku, но когда я продвигаю приложение с staging
на production
, производственное приложение подключается к промежуточной базе данных. Как можно решить? Как вам это удается?
ИЗМЕНИТЬ Я обнаружил ошибку. Я задаю параметры через
$db = parse_url(getenv('CLEARDB_DATABASE_URL'));
$container->setParameter('database_host', $db['host']);
Из быстрого поиска $container->setParameter я вижу, что это функция Symfony для интерполяции значений в код, однако они упоминают следующее предупреждение в своих документах:
ПРИМЕЧАНИЕ. Вы можете установить параметр только до компиляции контейнера, а не во время выполнения. Дополнительные сведения о компиляции контейнера см. в разделе Компиляция контейнера. https://symfony.com/doc/current/service_container/parameters.html#getting-and-setting-container-parameters-in-php
Heroku обрабатывает только приложения Symfony в prod env. Таким образом, сценическое приложение также имеет переменную среды как «prod». Как я могу установить параметры для разных env? Или динамически?
Спасибо, АльтерБ