g:message 中的代码未解析
code in g:message is not resolved
我想了解为什么这不起作用:
<g:set var="testvar" value="${'label.' + controller.computeLabel()}"/>
<g:message code="${testvar}"/>
这个输出是(假设 controller.computeLabel() returns "computed.label"):
label.computed.label
如何强制 g:message 解析代码属性?
谢谢!!
您对以下陈述做出了很多假设:
Assuming that contoller.computeLabel() returns "computed.label"
像在您的 GSP 中那样调用内联控制器不会按照您预期的方式运行。事实上,它在很多层面上都是错误的。 你不应该这样做。
相反,任何呈现 GSP 的控制器都应该在模型中提供信息。所以,你最终会得到这样的结果:
<g:set var="testvar" value="${'label.' + valueFromModel}"/>
以这种方式解决问题并正确使用 MVC 将解决您的问题。
如果没有更多关于您具体情况的信息,就不可能给您更详细的答案。
我现在觉得很傻...标签不匹配。
它工作正常。
我想了解为什么这不起作用:
<g:set var="testvar" value="${'label.' + controller.computeLabel()}"/>
<g:message code="${testvar}"/>
这个输出是(假设 controller.computeLabel() returns "computed.label"):
label.computed.label
如何强制 g:message 解析代码属性?
谢谢!!
您对以下陈述做出了很多假设:
Assuming that contoller.computeLabel() returns "computed.label"
像在您的 GSP 中那样调用内联控制器不会按照您预期的方式运行。事实上,它在很多层面上都是错误的。 你不应该这样做。
相反,任何呈现 GSP 的控制器都应该在模型中提供信息。所以,你最终会得到这样的结果:
<g:set var="testvar" value="${'label.' + valueFromModel}"/>
以这种方式解决问题并正确使用 MVC 将解决您的问题。
如果没有更多关于您具体情况的信息,就不可能给您更详细的答案。
我现在觉得很傻...标签不匹配。
它工作正常。