Mezar konsolunun içinden taglib kapatmayı çağırmanın bir yolu var mı? Ben grails konsol içinde mesaj etiket almak mümkün ve ben bunu anlayamıyorum ...Grails konsolunda TagLib malzeme mi aranıyor?
10
A
cevap
11
Yapılandırılmış taglib alabilirsiniz, ancak çoğu bir web isteği bağlamında çalışıyor olmayı bekliyoruz.
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')
Ayrıca isteğin yerel ayarlayarak diğer diller için mesajları alabilirsiniz
, örneğin: Bir sahte isteği bağlayabilmesiyle etrafında almak için Sen çalıştırarak uygulamadaki tüm taglibs bir listesini alabilirsiniz
import org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib
// Getting the class name to reduce horizontal
// scrolling in StackOverflow
def g = ctx.getBean(ValidationTagLib.class.getName())
g.message(code: 'default.button.delete.confirm.message');
bu biz web isteği alay gerekmez olarak daha kolaydır @Burt console plugin kullanma
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')
3
... konsoldaki bu kod ...
// prints a bean name per line.
ctx.getBeanNamesForType(Object).findAll {
it =~ /.*TagLib$/
} .sort() {println it}
// add false to prevent console printing the map out
false