我试图在路由中实现语言环境。 我可以得到它像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 }
路由前缀,因为他们应该,但我无法用我的登录和注销路线。
有针对https://github.com/schmittjoh/JMSI18nRoutingBundle – malcolm
简单捆绑我也只是看看它,但它只是为symfony1.2 2.我使用的symfony 3.我不能甚至可以使用作曲家进行安装。 – SnelleJelle
我在Symfony 3.0.6上,每次都使用这个包。添加到作曲家:'“jms/i18n-routing-bundle”:“^ 2.0”,' – malcolm