如何让用户在Playframework 2中切换语言 [英] How to let the user switch language in playframework 2

查看:86
本文介绍了如何让用户在Playframework 2中切换语言的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的游戏1.x控制器中,我有这个:

In my play 1.x controller I had this:

public static void language(final String language){
    Lang.change(language);
    Header referer = request.headers.get("referer");
    if(referer == null){
        index();
    }else{
        redirect(referer.value());
    }
}

我想在Play 2.x中做同样的事情,但是我觉得功能不再可用.这是我到目前为止所拥有的

I would like to do the same in play 2.x but I have the impression that functionality is not available any more. This is what I have so far

  def language(language:String) = Action { implicit request =>

    // TODO change language

    val referer = request.headers.get("referer")
    referer.map{ referer =>
      Redirect(referer, FOUND);
    }getOrElse(
      Ok(views.html.index())
    )
  }

推荐答案

根据

According to the documentation, in Play 2.4, inside the controller you can do

ctx().changeLang(new Lang(Lang.forCode("fr")));

您需要有一个文件conf/messages.fr,以便应用程序可以参考该消息.您可以从消息开始.默认文件并输入您自己的消息.

You need to have a file conf/messages.fr so the application can refer to it for the message. You can start from the messages.default file and put your own messages.

这篇关于如何让用户在Playframework 2中切换语言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆