Ссылки на вложенные параметры в файлах конфигурации Symfony 4 - PullRequest
0 голосов
/ 01 мая 2018

Я хотел бы иметь возможность использовать вложенные параметры, определенные в одном файле конфигурации в другом для примера

# config/config.yaml (my custom configuration file)
database:
    driver: pdo_mysql
    host: localhost
    user: dev
    password: dev
    dbname: dev

Для использования в другом файле конфигурации

# config/packages/doctrine.yaml
url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'

В настоящее время это не работает, так как я не уверен, как ссылаться на переменные в пакете Config (https://symfony.com/doc/current/configuration.html)

1 Ответ

0 голосов
/ 04 июня 2018

Параметры являются просто плоскими элементами значения ключа и не могут быть вложенными. Это написано в документации Symfony

Вы должны определить отдельный ключ для каждого параметра. Соглашение состоит в том, чтобы использовать точку для разделения пространств имен. Точка не делает его массивом, но облегчает его чтение.

database.driver: pdo_mysql
database.host: localhost
database.user: dev
database.password: dev
database.dbname: dev

Затем параметры доступны точно так, как вы хотите:

url: 'mysql://%database.user%:%database.password%@%database.host%:%database.port%/%database.dbname%'
...