我试图在路线中实施区域设置。
我可以像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 }
路线的前缀应该是正确的,但我无法使用登录和退出路线。
答案 0 :(得分:1)
使用https://github.com/schmittjoh/JMSI18nRoutingBundle捆绑包。
在app/config.yml
中设置默认语言环境的包。
jms_i18n_routing:
default_locale: nl
locales: [nl, en]
strategy: prefix_except_default