在控制器中调用 update() 后,Grails 更改默认显示视图

Grails change default show view after update() gets called in controller

我的 grails 3.2.9 项目中有一个控制器是使用 generate-controller 命令创建的。我想更改在调用控制器中的 update() 方法后呈现的默认视图。它默认呈现 show.gsp,但我希望它呈现自定义 gsp。是否有可能改变这种行为?我尝试将 update() 方法的最后一行更改为:

'*'{ respond BOSI, [status: OK, view: 'myView'] }

但 show.gsp 继续渲染。我是 grails 框架的新手,所以非常感谢任何帮助。

您显示的行是以下构造的一部分:

request.withFormat{
  form multipartForm{
    flash.message = '' // some message
    redirect some
  }
  '*'{ respond some, [ status:OK ] }
}

and 用于响应 REST 调用,与 GSP 无关。如果要调整GSP渲染,还得修改其他几行:

request.withFormat{
  form multipartForm{
    flash.message = '' // some message
    redirect action:'myView', id:some.id
    // or
    render view:'myView', model:[ some:some ]
  }
  '*'{ respond some, [ status:OK ] }
}