2011-04-02 21 views
0

在grails中,当你创建一个服务时,它具有类的名字。所以如果我在控制器中创建CategoryService,我在控制器中添加'def categoryService'。如何在grails中定义服务的名称?

但是如何定义不同类的名字。示例:'mycategorySvc'?

谢谢

回答

4

你将不得不在spring/resources.groovy文件中自己连线。这就是说,我不建议这样做这样的事情了几个原因

  1. 缩短字服务,以SVC不会获得你什么
  2. 其他Grails开发者6个月内看你的代码将说“WTF?”

我想通过MyCategoryService听到MyCategorySvc的参数。

和BTW,第一位没关系(MyCatagory)。它不必与域名匹配。自动注入所需的唯一东西就是Service这个词。您可以创建一个名为JooHooBooDooService的服务,并将其引入到CategoryController中。

+0

是的你的权利,但这是因为在一些服务的Grails中存在的错误。我得到的错误mypackage.MyCategoryService不能用mypackage.MyCategoryService转换 – 2011-04-07 08:45:18

+0

什么版本的grails,你可以更详细地描述bug? – Gregg 2011-04-07 19:47:40

+0

http://jira.grails.org/browse/GRAILS-7302我有同样的信息,我使用@Transactional的代码。谢谢你的帮助 – 2011-04-11 21:30:45

0

我想你正面临一些其他的铸造问题,但只是为了回答这个问题。 这样做的方法是在resources.groovy中定义我们的bean。

假设我有QuestionAnswerService代替questionAnswerService的名字,我想QNS,所以我会在resources.groovy定义QNS豆

beans = { 
    qns(QuestionAnswerService){ 
    } 
} 

,只是用这个名字在注入我的服务任何控制器和服务,如

def qns 

就是这样,我有qns名为QuestionAnswerService bean注入

希望它有帮助。谢谢

相关问题