通过引用使用grails/groovy类
我正在尝试在grails中创建自己的CRUD控制器,以实现脚手架无法实现的功能 我不想为每个域维护一个控制器的代码,而是希望有一个控制器可以为任何域的通用CRUD调用提供服务。。因为唯一的区别是域类名 使用域类Job&Note的示例 而不是通过引用使用grails/groovy类,grails,groovy,Grails,Groovy,我正在尝试在grails中创建自己的CRUD控制器,以实现脚手架无法实现的功能 我不想为每个域维护一个控制器的代码,而是希望有一个控制器可以为任何域的通用CRUD调用提供服务。。因为唯一的区别是域类名 使用域类Job&Note的示例 而不是 Job.get(id) Job.list() def instance = new Job(params) Note.get(id) Note.list() def instance = new Job(params) 我在想 def someHandl
Job.get(id)
Job.list()
def instance = new Job(params)
Note.get(id)
Note.list()
def instance = new Job(params)
我在想
def someHandler = Job // configurable
someHandler.get(id)
someHandler.list()
def instance = new someHandler(params)
前两个静态方法(get、list)工作正常,但创建新实例却不行。
任何关于如何最好地做到这一点的建议
Cheers使用
def instance = someHandler.newInstance()
以及使用
def instance = someHandler.newInstance(params)
如果您对Grails默认提供的框架控制器/视图不满意,并且希望以类似的方式对所有域类进行更改,那么更好的方法可能是编辑用于生成这些控制器/视图的模板 您可以通过运行脚本
grails安装模板来实现这一点。这将在src/templates/scaffolding
目录中创建大量文件,每个文件定义用于生成脚手架工件的模板
更改这些模板以创建所需的控制器/视图。如果您已经为任何域类运行了grailsgenerateall
,那么您需要为这些类再次运行它来更新现有的框架