如何在运行时将动态方法添加到Grails域对象而不创建插件?

yur*_*ura 3 grails grails-plugin

在ref文档中,我发现只有例子

class ExamplePlugin {
  def doWithDynamicMethods = { applicationContext ->
        application.controllerClasses.each { controllerClass ->
             controllerClass.metaClass.myNewMethod = {-> println "hello world" }
        }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是我不想为这样的代码创建插件......

Joh*_*ner 6

您可以在init闭包中的grails-app/conf/BootStrap.groovy文件中添加动态方法,然后它们应该在应用启动时可用.

请注意,以这种方式添加的动态方法在单元测试中不可用.它们将在集成测试和运行时提供.