Подтвердить что ты не робот

Нужно ли возвращать "рендер" в Grails?

Требуется ли это возвращение? Пусть говорят это в середине действия.

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

Ответ 1

Если вы не вернетесь, любой код после render также будет выполнен, что часто не является тем, что вы хотите, например.

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'
}

Конечно, если вы используете этот стиль вместо этого, нет необходимости возвращать

def someAction = {

  if (someCondition) {
    render view: 'success'

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

Если действие имеет только одну точку выхода, нет необходимости возвращать после render

def someAction = {
    render view: 'success'
}

Просто помните, что код после render будет выполнен, если вы не вернетесь.