有没有办法从grails控制台内部调用taglib闭包?我希望能够在grails控制台中找到message标签,但我无法弄清楚...

最佳答案

您可以获取已配置的taglib,但大多数期望在Web请求的上下文中运行。为了解决这个问题,您可以绑定(bind)一个模拟请求:

import grails.util.GrailsWebUtil

GrailsWebUtil.bindMockWebRequest ctx

def g = ctx.getBean('org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib')
String message = g.message(code: 'default.button.delete.confirm.message')

您还可以通过设置请求的语言环境来获取其他语言的消息,例如
import grails.util.GrailsWebUtil

def webRequest = GrailsWebUtil.bindMockWebRequest(ctx)
webRequest.currentRequest.addPreferredLocale(Locale.GERMANY)

def g = ctx.getBean('org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib')
String message = g.message(code: 'default.button.delete.confirm.message')

关于grails - 在Grails控制台中调用TagLib的东西?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2782421/

10-11 16:42