Vic*_*tin 2 grails action controller
想象一下这个控制器:
class exampleController{
def action1 = {}
def action2 = {}
def action3 = {}
def action4 = {}
def action5 = {}
}
Run Code Online (Sandbox Code Playgroud)
我希望能够在此控制器的所有动作中返回相同的参数.想象一下:
def user = session.user
[user: user]
Run Code Online (Sandbox Code Playgroud)
除了在所有动作上编写所有相同的代码之外,有没有办法做到这一点?session.user return params就是一个例子.我不想真的回归它.
一个简单的解决方案是将此代码放在一个方法中,并从每个操作中调用它
class exampleController{
def action1 = {getModel()}
def action2 = {getModel()}
def action3 = {getModel()}
def action4 = {getModel()}
def action5 = {getModel()}
private getModel() {
def user = session.user
[user: user]
}
}
Run Code Online (Sandbox Code Playgroud)
虽然这确实涉及一些重复(调用相同的方法),但是这里发生的事情更加明显.在调试/测试控制器时,很容易忘记过滤器和拦截器,这往往会导致类似的问题
@**%在这里发生了什么?
| 归档时间: |
|
| 查看次数: |
285 次 |
| 最近记录: |