为什么我不能从控制台的脚手架模板访问注入的服务?

时间:2012-09-19 08:39:24

标签: grails scaffolding

我有一个看起来像这样的控制器:

class CategoryController {

    static scaffold = true

    def messageSource

    def categoryService
    ...
}

我想修改Controller模板以在需要时使用服务:

class ${className}Controller {

    static allowedMethods = [save: "POST", update: "POST", delete: "POST"]

    def list() {
        def domainObjectsProperty = ... //long complex line
        render view: "/${domainClass.propertyName}/list", model: [(domainObjectsProperty): ${domainClass.propertyName}Service.list()]
    }

    ...
}

表达式${domainClass.propertyName}Service评估为categoryService,但我收到消息:

  

没有这样的属性:class的categoryService:   mypackage.CategoryController

同时,当我调用的是使用CategoryService的CategoryController的scaffolded方法时,一切都很好。

是什么导致此行为以及如何解决此问题?谢谢!

1 个答案:

答案 0 :(得分:1)

我认为您忘记了服务注入

class ${className}Controller {

   def ${domainClass.propertyName}Service

   ... 
}