По некоторым причинам безопасности у каждого клиента есть своя собственная база данных в моем приложении Symfony 3.4, здесь пример моего файла config.yml:
doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_pgsql
host: 127.0.0.1
port: null
dbname: default
user: user
password: password
charset: UTF8
customer1:
driver: pdo_pgsql
host: 127.0.0.1
port: null
dbname: customer1
user: user
password: password
charset: UTF8
customer2:
driver: pdo_pgsql
host: 127.0.0.1
port: null
dbname: customer2
user: user
password: password
charset: UTF8
и ORM:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
default_entity_manager: default
entity_managers:
default:
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
connection: default
mappings:
BackBundle: ~
BackBundle: ~
customer1:
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: false
connection: customer1
mappings:
BackBundle: ~
customer2:
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: false
connection: customer2
mappings:
BackBundle: ~
Iможно получить файл config.yml с
$value = Yaml::parseFile('/pathtofile/app/config/config.yml');
значение $ содержит массив, но даже когда я использую array_push (), результат не читается
Мои вопросы:
Сначала я хочу автоматически создать новое соединение с базой данных в doctrine и новую конфигурацию orm в файле config.yml, когда администратор создает нового пользователя после того, как я хочу выполнить doctrine:database:create --connection=dbname
и doctrine:schema:update --force --em=emname
все это в контроллере без редактирования вручнуюфайл config.yml
Спасибо