我正在为访问外部应用程序创建网页网址,例如:http://my.site/en/page/1
或 http://my.site/fr/page/1
。在树枝模板中,我使用了app.session.locale
变量。未从URL设置Symfony 2.0会话区域设置?
app.session.locale
工作正常,但url()
和path()
函数有时会随机使用默认语言环境 - 它们生成/ en/URL而不是/ fr /页面上的/ fr /。这不会以稳定的方式重现。
添加_locale
参数如url('_foobar_action', {'something': model.fooId, '_locale': app.session.locale})
没有帮助。这听起来像这个discussion which是没有好消息。
在外部应用程序中没有确定此URL的会话,因此可以认为它是安全的wget
。
这里有什么问题?这是一个已知的问题吗?
今天在主分公司发生了重大变化。即使您使用的是2.0,您也可能想要查看它。 https://github.com/symfony/symfony/pull/4692 – MDrollette
谢谢@MDrollette!你可以请转贴这个答案吗? :) 不知道我会冒险升级到2.1,它不在2.0 8( –