在带有BeSimpleI18nRoutingBundle的Symfony 3.2.6中,无法在生产模式下生成i18n路由

时间:2017-03-28 08:18:51

标签: php symfony routing translation symfony-3.2

我的项目在Symfony 3.2.6中,我尝试使用BeSimpleI18nRoutingBundle在生产模式下生成i18n路由。

在开发模式下,它没问题。

但在生产模式下,生成的路由始终位于相同的区域设置(当前)。

(我已经清除了缓存)

我使用这些链接切换:

<a href="{{ path(app.request.attributes.get('_route'), {'locale': 'fr'}) }}">fr</a>
<a href="{{ path(app.request.attributes.get('_route'), {'locale': 'en'}) }}">en</a>

你有什么想法吗?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。

对于开发模式下的工作,我必须更新&#34; _main&#34;路由在&#34; routing_dev.yml&#34;用&#34;输入:be_simple_i18n&#34;像这样:

_main:
    resource: routing.yml
    type: be_simple_i18n

生产模式的解决方案是在&#34; config.yml&#34;中添加相同的行。 &#34; routing.yml&#34;像这样导入:

framework:
    ...
    router:
        resource: "%kernel.root_dir%/config/routing.yml"
        type: be_simple_i18n