4

有谁知道比以下更简洁的国际化方式:

<h2>@Messages.get("Title")</h2>

Play 1.x 的精神:

<h2>&{'Title'}</h2>
4

2 回答 2

5

这是标准的方式。您可以创建自己的标签:

//file: I.scala.html under views.tags

@(key: String)

@Messages.get(key)

然后像这样使用它

@import tags._  //to import tags, only once per template

@I("my.key")
于 2012-05-04T10:24:13.640 回答
2

根据Pere Villega的回答,我创建了一个小标签文件来支持消息参数。

i.scala.html(因为我不相信大写i的 s):

@(key: String, args:String*)@Messages(key, args:_*)

该文件的内容在单行上,并且在 html 部分中不包含任何空格,因为否则会包含换行符并且可能会破坏某些内容,或者至少会使生成的代码变得丑陋且难以阅读。
它可以这样使用:@i("my.key", value1, value2).


另一个标签 ,hi.scala.html用于包含 html 的消息:

@(key: String, args:String*)@Html(Messages(key, args:_*))
于 2012-05-10T18:05:21.690 回答