默认语言环境在symfony 4中不变

Gie*_*iuX 5 locale symfony symfony4

我试图将语言环境从'en'更改为'lt'作为默认设置,但根本没有更改,它只会添加为“ Fallback语言环境”,而不会作为主要语言环境。因此,在解决该问题之后,我又遇到了另一个问题,即按语言显示的路由不正确。因此,第一个问题应该解决所有其他问题。

services.yaml

parameters:
    locale: 'lt'
Run Code Online (Sandbox Code Playgroud)

framework.yaml

framework:
    default_locale: '%locale%'
Run Code Online (Sandbox Code Playgroud)

结果:

在此处输入图片说明

在此处输入图片说明

因此,我的路线使用EN语言路线而不是LT

有什么办法吗?尝试了没有%locale%变量,清除缓存等。

Rmy*_*my5 4

如果您使用翻译,请查看Translations.yaml

framework:
    default_locale: '%locale%'
    translator:
        default_path: '%kernel.project_dir%/translations'
        fallbacks:
            - '%locale%'
Run Code Online (Sandbox Code Playgroud)

%locale% 变量在services.yaml中定义。

如果您使用事件订阅者来跟踪用户定义的区域设置,您可能需要在services.yaml中检查该事件订阅者的配置:

 App\EventSubscriber\LocaleSubscriber:
    arguments: ['%kernel.default_locale%']
Run Code Online (Sandbox Code Playgroud)