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