【问题标题】:Grails change default show view after update() gets called in controller在控制器中调用 update() 后 Grails 更改默认显示视图
【发布时间】:2017-06-17 13:16:07
【问题描述】:

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

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

但 show.gsp 会继续呈现。我对 grails 框架还很陌生,因此非常感谢任何帮助。

【问题讨论】:

    标签: grails grails-controller


    【解决方案1】:

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

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

    用于响应 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 ] }
    }
    

    【讨论】:

    • 我最终选择了重定向,因为这正是我想要的,谢谢
    猜你喜欢
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    • 2014-10-27
    • 2019-01-20
    • 1970-01-01
    相关资源
    最近更新 更多