据我所知,如果我想在控制器中创建一个动作,那么我可以通过以下方式完成:
class My Controller {
def myAction = {
println "in my action "
}
}
或者我可以通过以下方式创建它:
class My Controller {
def myAction(){
println "in my action "
}
}
有人可以告诉两种方法的区别,或者我的概念或看法是否有任何问题
答案 0 :(得分:2)
第一个实现是在控制器中定义公共闭包,第二个是使用公共方法。
第二种方式是在Grails 2中引入的,被广泛认为是最好的方式。
我可以从头脑中想到几个原因:
答案 1 :(得分:0)
我不确定,但我认为它曾经是第一种方式是唯一的方法,然后它改为允许第二种方式。我认为第二种方式是优先方式,但我不确定。
[编辑]
这是另一个堆栈溢出帖子,进一步解释它:
答案 2 :(得分:0)
利用方法而不是动作(Closure属性)有一些优点:
请访问以下链接了解更多信息。