我想在消息中插入一行“view.mail.warning”。它包含一个html代码,但是使用encodeAs =“html”,该消息也显示了一个href ...并且没有显示链接。做这些事情的正确方法是什么?我不想在部分中插入消息:(。
在gsp中:
<“p style ='color:#ddd; font-size:12px; text-align:center;'><”g:message code =“view.mail.warning”encodeAs =“html>
在message.properties中:
<“view.mail.warning = textPart1<”a href = ['http://page.com']> <“g:message code =”view.pageName“/> textPart2<”a href ='mailto:support@page.com'“>'support@page.com'textPart3
答案 0 :(得分:0)
正确的方式/是/将其插入零件中。但是,如果你/必须/在你的属性文件中包含html,你可以。然而,你不能包含的是GSP / taglibs。您对g:message的调用永远不会被解析/执行。来自资源的消息只是字符串。以下是完全有效的:
view.mail.warning=<p>I {0} do html in here!</p><em>But I {1} shouldn't.</em>
<g:message code="view.mail.warning" args="['can', 'really']" />
<p>I can do html in here!</p><em>But I really shouldn't.</em>
有关此事的一些注意事项。如您所见,您可以将参数传递给您的消息代码。它们是有序的,并且开始为零。这样,您就可以对邮件进行标记,甚至可以将GSP中的值传递给您的邮件。
这是在Grails中使用邮件资源包的正确方法。
答案 1 :(得分:0)
例如:
<强> message.properties 强>
view.mail.warning =&gt; p&gt;我可以在这里做html!&gt; / p&gt; &gt; p&gt;但我真的不应该。&gt; / p&gt;
<强> GSP 强>
输出
我可以在这里做html!&gt; / p&gt; &gt; p&gt;但我真的不应该。
我希望插入消息属性,消息带字符串+ html