Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails中的控制器布线 太长,读不下去了_Grails_Grails 2.0 - Fatal编程技术网

Grails中的控制器布线 太长,读不下去了

Grails中的控制器布线 太长,读不下去了,grails,grails-2.0,Grails,Grails 2.0,如何在resources.groovy中连接控制器 故事 我有两个控制器providercontroller和ProviderBController 他们都实施了ProviderControllerContract接口 interface ProviderControllerContract { abstract def actionX() abstract def actionY() } class ProviderAController implements Provider

如何在
resources.groovy
中连接控制器

故事 我有两个控制器
providercontroller
ProviderBController
他们都实施了
ProviderControllerContract
接口

interface ProviderControllerContract {
  abstract def actionX()
  abstract def actionY()
}

  
class ProviderAController implements ProviderControllerContract {
  @Override
  def actionX() { ... }

  @Override
  def actionY() { ... }
}


class ProviderBController implements ProviderControllerContract {
  @Override
  def actionX() { ... }
 
  @Override
  def actionY() { ... }
}
根据外部决策,我的Grails应用程序应该 一次只能使用一个控制器(例如重定向到其 其他控制器或视图中的操作)

但是,正如您可能已经猜到的,此设置没有按预期工作。 我怀疑我遗漏了一些琐碎的东西,或者误解了整个事情 首先是概念。如果有任何帮助/提示,我将不胜感激


最初发布在上,但现在我再次思考,似乎我应该将此发布在Grails用户列表上:-)

我没有尝试过此功能,但我已经看到此功能也适用于控制器

在resources.groovy中,尝试以下操作:

beans = {
    springConfig.addAlias 'providerController', 'providerAController'
}
<g:form action="${g.createLink(controller: 'providerController',
    action: 'actionX')">
  ...
</g:form>
// resources.groovy
beans = {

  providerController(ProviderAController)

}

// UrlMappings.groovy
...
'/foo/bar/x'(controller: 'providerController', action: 'actionX')
...
beans = {
    springConfig.addAlias 'providerController', 'providerAController'
}