我是否需要返回“渲染”在Grails中? [英] Do I need to return "render" in Grails?

查看:159
本文介绍了我是否需要返回“渲染”在Grails中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是必要的吗?

  render(contentType:'text / json',text:['success' :true] as JSON)
return


解决方案

如果你没有返回,那么 render 之后的任何代码也会被执行,这通常不是你想要的,例如

  def someAction = {

if(someCondition){
render view:'success'
//如果我们不
return
}

log.error'出错了'
渲染视图:'error'
}

当然,如果您使用此样式,则无需返回

  def someAction = {

if(someCondition){
render view:'success'

} else {
log.error'出错了'
render view:'error'
}





$ b如果一个动作只有一个退出点,那么不需要返回 render

  def someAction = {
渲染视图:'success'

请记住 render 将会被执行,如果你没有返回。


Is that return necessary? Let's say it's in the middle of an action.

render(contentType:'text/json', text: ['success': true] as JSON)    
return

解决方案

If you don't return, any code after render will also be executed, which is often not what you want, e.g.

def someAction = {

  if (someCondition) {
    render view: 'success'
    // if we don't return execution would fall through to the code below
    return  
  }

  log.error 'something went wrong'
  render view: 'error'
}

Of course, if you use this style instead, there's no need to return

def someAction = {

  if (someCondition) {
    render view: 'success'

  } else {    
    log.error 'something went wrong'
    render view: 'error'
  }
}

If an action only has one exit point, there's no need to return after render

def someAction = {
    render view: 'success'
}

Just remember that the code after render will be executed if you don't return.

这篇关于我是否需要返回“渲染”在Grails中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆