我已阅读文档:http://www.playframework.com/documentation/2.1.0/ScalaI18N 这篇文章: i18n error: controller and templates uses different implicit languages 如果存在隐式请求,则可以直接从请求标头中隐式设置语言。在我的应用程序中,我需要根据某个逻辑(不依赖于请求标头中的语言)在所有模板中设置语言。有没有办法做到这一点?
答案 0 :(得分:2)
是的,您需要在视图中添加一个额外的隐式参数,如下所示:
@(form:Form[_])(implicit lang:play.api.i18n.Lang)
然后在您的控制器中添加如下所示的行:
// this retrieves the language from the configuration,
// replace it with your own logic
implicit val defaultLang = Lang.availables.headOption.getOrElse(Lang.defaultLang)