0

我正在尝试在路线中实现语言环境。我可以让它像host/en/page&host/fr/page使用这个片段一样工作:

#routing.yml

app:
    resource: "@AppBundle/Controller/"
    type:     annotation
    prefix:   /{_locale}
    requirements:
        _locale: nl|en

但我的目标是能够使用host/page区域设置不在 url 中的位置,而是设置为默认区域设置。

我该怎么做呢?我在文档中的任何地方都找不到它。

编辑,试用 JMSI18nRoutingBundle

补充:

# config.yml

jms_i18n_routing:
    default_locale: nl
    locales: [nl, en]
    strategy: prefix_except_default

.

# security.yml > firewalls section

form_login:
        login_path: _login
        check_path: _login
        csrf_token_generator: security.csrf.token_manager
    logout:
        path:   _logout
        target: /

.

# routing.yml

_logout:
    path: /logout
    options: { i18n: false }
_login:
    path: /login
    options: { i18n: false }

路由应有前缀,但我无法使用我的登录注销路由。

4

1 回答 1

0

使用https://github.com/schmittjoh/JMSI18nRoutingBundle捆绑包。

app/config.yml设置默认语言环境的捆绑包中。

jms_i18n_routing:
    default_locale: nl
    locales: [nl, en]
    strategy: prefix_except_default
于 2016-05-12T10:18:33.613 回答