Symfony翻译始终使用默认EN

Dan*_*lci 1 php translation localization symfony twig

我的浏览器设置了意大利语,但symfony本地化只给我英文翻译.如果我使用意大利语浏览器访问该页面,如何获得意大利语字符串?

现在我在EN浏览器和IT浏览器中看到"pluto".

Config.yml:

parameters:
    locale: en

framework:
    translator: { fallbacks: ['%locale%'] }
Run Code Online (Sandbox Code Playgroud)

messages.en.yml:

Pippo: pluto
Run Code Online (Sandbox Code Playgroud)

messages.it.yml:

Pippo: paperino
Run Code Online (Sandbox Code Playgroud)

index.html.twig:

{% block body %}
    <div class="container">
        <div class="row">
            <div class="col-sm-12">
                {% trans %}
                    Pippo
                {% endtrans %}
            </div>
        </div>
    </div>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

谢谢

mar*_*tin 5

如果要从头部设置当前区域设置,则需要为设置的事件创建事件侦听kernel.request$request->setLocale(...).

看到类似的问题: