我正在尝试使用grails进行国际化
在浏览器上一切正常,希腊字符显示正常,但是当我打开浏览器的页面源以检查生成的html代码时,希腊字符显示如下:
<meta name="keywords" content="Ενοικιαζόμενα δωμάτια"/>
上述问题仅在我使用功能消息时出现,即
content="${message(code:'keywords' )}"
当我使用标记消息时,
<pre>
<g:message code="test" />
</pre>
希腊字符在浏览器的源代码中正确显示。
有任何帮助吗?我找到了这个页面: 希腊符号和html实体的http://htmlhelp.com/reference/html40/entities/symbols.html
我认为Google的蜘蛛对该网站的希腊版本不满意
答案 0 :(得分:0)
可能是grails.views.default.codec
中Config.groovy
的设置。如果是html
,则Groovy块${ }
中的所有内容都将使用HTML实体进行编码,但<g:message/>
标记不会,因为它不适用encodeAsHTML()
打电话。
您可以使用in page settings覆盖此设置,以便仍然对需要转义的gsps部分进行编码。