Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 基于数据库条目的Symfony2捆绑包配置_Php_Symfony_Configuration_Dependency Injection - Fatal编程技术网

Php 基于数据库条目的Symfony2捆绑包配置

Php 基于数据库条目的Symfony2捆绑包配置,php,symfony,configuration,dependency-injection,Php,Symfony,Configuration,Dependency Injection,我正在使用JMSI18nRoutingBundle。我需要创建功能,这将允许管理员从CMS创建新的语言 问题是,如何从数据库(存储在“locale”表中)获取可用的语言,并在JMS包配置中使用它们。 例如:我在DB中有三个区域设置(EN、FR、PL),我应该得到与此类似的结果(但从DB中获取): jms_i18n_路由: 默认语言环境:en 地区:[en,fr,pl]Ok。似乎Symfony没有提供任何工具来根据数据库条目创建捆绑包配置。 我们创建了一个小的“变通方法”-我们创建了一个.yml文

我正在使用JMSI18nRoutingBundle。我需要创建功能,这将允许管理员从CMS创建新的语言 问题是,如何从数据库(存储在“locale”表中)获取可用的语言,并在JMS包配置中使用它们。 例如:我在DB中有三个区域设置(EN、FR、PL),我应该得到与此类似的结果(但从DB中获取):

jms_i18n_路由:
默认语言环境:en

地区:[en,fr,pl]Ok。似乎Symfony没有提供任何工具来根据数据库条目创建捆绑包配置。 我们创建了一个小的“变通方法”-我们创建了一个.yml文件,其中只包含一个参数(我们使用它来配置可用的语言),当区域设置表中的条目发生更改时,我们只需使用新的参数值重写该文件。
简单。

要添加动态配置,BundleExtension中有一个prepend方法。但是我不确定您是否能够$container->get('doctrine.orm.default_entity_manager');不幸的是,在配置文件中没有注入任何服务的选项。这就是问题所在。
jms_i18n_routing:
    default_locale: en
    locales: [en, fr, pl] <--
    strategy: prefix