【问题标题】:In Grails 3 (3.2.6 confirmed), rendering view with null layout does not properly override default在 Grails 3(3.2.6 确认)中,使用空布局渲染视图不会正确覆盖默认值
【发布时间】:2017-07-02 05:54:57
【问题描述】:

在 Grails 3 中,设置 layout: null 似乎不会覆盖可能存在的默认布局。在 Grails 2.5.4 中并非如此。覆盖布局的操作顺序/优先级似乎已更改。也许我通过尝试设置渲染视图来使用未记录的功能:“myView.gsp”,layout:null 以避免设置布局?

   render view: "/account/profile/viewProfile",
                        layout: springSecurityService.isAjax(request) ? null : "customLayout"

【问题讨论】:

    标签: grails grails-controller grails-3.0


    【解决方案1】:

    从 Grails 3(确认 w/ 3.2.6)开始,如果您有一个与您的控制器名称匹配的布局(即 AccountController 和 layouts.gsp),您必须将布局更改为其他内容以控制是否布局是通过 layout: null 机制在渲染视图时应用的。

    【讨论】:

    • 只是为了澄清,它包含在有关设置控制器级别默认值的文档中,并且布局由(命名)约定应用。但是从 Grails 2 到 3 的行为变化通过在渲染视图时将布局设置为 null 来排除布局被使用,这让我感到惊讶,并且似乎没有在我遇到的任何迁移指南中涵盖。
    猜你喜欢
    • 1970-01-01
    • 2013-12-25
    • 2016-09-08
    • 1970-01-01
    • 2022-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多