阻止Grails在控制器中生成某些方法?

时间:2010-01-13 13:46:28

标签: grails groovy

在Spring Roo中如果我不想自动生成特定方法,我可以删除注释。有没有办法在Grails中这样做?例如,当我执行generate-all时,我希望列表和创建控制器的方法能够自动更新域模型中的任何更改,但是我希望使用自定义代码来显示不会更改的show方法,除非我手动编辑它。

2 个答案:

答案 0 :(得分:2)

如果您在动态脚手架控制器中提供操作,那么Grails将不会在运行时创建该操作(但它将创建所有其他操作)。因此,如果您不希望更新show操作,请执行此操作

class SomeDomainObjectController {
  def scaffold = SomeDomainObject

  def show = {
    // Your logic for this action goes here
  }
}

答案 1 :(得分:1)

运行'grails install-templates',它将复制用于生成控制器,GSP等的模板脚本。编辑这些脚本以获得所需的方法。

这不像Roo那样灵活,因为它是全局的,并且不是每个实例都可用,但是如果你想为所有控制器提供相同的结构,那么它将适合你。