grails - 如何将所有请求映射到 Controller ,请转到一种方法并访问原始参数

标签 grails grails-controller grails-config

我有一个 Controller ,试图根据url设置默认值-但所有请求都发送给一个 Controller 。
尝试扩展答案:URLMapping to direct all request to a single controller/action

我在URLMappings.groovy中做到了

"/**"(controller:"lab", action:"index", params:[labName:action])

我希望可以将原始操作名称添加到参数中,但这似乎无济于事。

以任何方式,我可以将所有发送到该 Controller 的请求映射到一个 Action ,并查看原始 Action 名称是什么?

最佳答案

操作名称是根据url映射而不是所请求的url确定的。当您使用单个 Action 时,将始终获得 Action 名称作为索引。根据以下要求,可以选择一些选项:

  • 使用请求的url和http方法找到正确的 Controller 和操作。不建议。
  • 使用过滤器设置默认数据
  • 在请求属性中保存了原始 Controller 和操作后,使用过滤器重定向到默认 Controller 。不建议使用,因为它会导致多次重定向
  • 使用默认 Controller 扩展您的 Controller ,并在拦截器中进行数据设置。
  • 关于grails - 如何将所有请求映射到 Controller ,请转到一种方法并访问原始参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35566137/

    相关文章:

    grails - 如何在功能测试中访问 grailsApplication 和 ApplicationContext

    grails - grails namedQueries如何使用OR

    Grails:两个站点,一个代码库

    spring - 如何在Grails resources.groovy中编写等效于Spring的jee:jndi-lookup?

    grails 在没有数据库支持的情况下从 bootstrap.groovy 填充 Controller 模型

    grails - 是否可以通过Webflow Controller操作访问 View 状态?

    Grails 应用程序未从配置中获取数据

    grails - 带复合键的Grails独立标准

    grails - 读出 Grails-Controller 中的所有 Action