栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

playframework 2.2 java:如何从子域设置语言(i18n)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

playframework 2.2 java:如何从子域设置语言(i18n)

您可以为此使用超类的ie

changeLang(Stringpre)
方法
play.mvc.Controller

然后,您需要告诉您的语言解析器,哪个域使用我们默认的语言,为此使用探查

application.conf
或数据库记录。接下来,根据您要实现的目标,只需使用Global类来拦截您的所有请求,或者创建一个简单的操作即可更改语言,然后它们将返回同一页面(因此用户可以自己决定要使用哪种语言)

这是一种基于cookie的机制,因此我不确定是否不需要执行强制页面重新加载(即,通过重定向到同一路径),我想您会告诉我们何时进行检查; )

编辑:

那可能就是 喜欢

public Action onRequest(final Http.Request request, final Method actionMethod) {    if (request.host().equals("de.yourdomain.tld") && (request.cookie("PLAY_LANG") == null || !request.cookie("PLAY_LANG").value().equals("de"))) {        return new Action.Simple() { public Result call(Http.Context ctx) throws Throwable {     ctx.changeLang("de");     return redirect(request.path()); }        };    } else {        return super.onRequest(request, actionMethod);    }}

只需确保已

de
添加lang
application.conf
,否则您将获得漂亮的,无尽的重定向循环。这
PLAY_LANG
是用于存储所选语言的典型Play曲奇名称。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/574292.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号