【问题标题】:Grails - Only get URL paramsGrails - 仅获取 URL 参数
【发布时间】:2016-10-24 11:39:34
【问题描述】:

我尝试制作一个动态 URL 映射,您可以在 URl 中传递任何查询。所以此时我想渲染查询的键/值,但没有控制器、方法和操作信息。

所以当我通过 person?name=Mark&age=60

它呈现 ['name':'Mark', 'age':'60', 'controller':'Person', 'method':'GET', 'action':'getPerson']

我怎样才能只获取 url 中的查询而不是有关控制器等的其他信息。

网址映射

"/person"{
        controller = "Person"
        method = 'GET'
        action = "getPerson"
    }

人员控制器

def getPerson(){
    render params
}

我已通过执行以下操作将它们从渲染中删除:

    HashMap search = params
    String action = "action"
    String controller = "controller"
    String method = "method"

    search.remove(action)
    search.remove(controller)
    search.remove(method)

    render search

【问题讨论】:

    标签: grails


    【解决方案1】:

    我认为你能做的最好的就是删除你知道并且不想看到的参数:

    def getPerson(){    
        render params.findAll { !(it.key in ['action', 'controller', 'method']) }
    }
    

    【讨论】:

    • 不客气 - 我希望有更好的方法,但我还没有找到。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-08
    • 2020-09-19
    • 2015-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多