Symfony 2.0 会话区域设置未从 URL 设置


Symfony 2.0 session locale not set from URL?

>我正在为外部应用程序创建一个要访问的网页URL,例如:http://my.site/en/page/1http://my.site/fr/page/1 .在 Twig 模板中,我正在使用app.session.locale变量。

app.session.locale工作正常,但url()path()函数有时会随机使用默认语言环境 - 它们在/fr/页面上生成/en/URL 而不是/fr/。这不会以稳定的方式重现。

添加_locale参数(如url('_foobar_action', {'something': model.fooId, '_locale': app.session.locale} ))无济于事。这听起来像是这样的讨论,这不是好消息。

外部应用程序中没有访问此 URL 的会话,可以安全地将其视为wget

这里可能出了什么问题?这是一个已知问题吗?

今天在

主分支中进行了重大更改。即使您使用的是 2.0,您可能也想检查一下。http://github.com/symfony/symfony/pull/4692