0

使用 grails 中的自定义 url 映射可以预期以下行为:默认情况下,所有 g.createLink 和 g.link 都会根据 Urlmappings.groovy 逻辑过滤可选属性参数。其余页面参数被忽略,因为与特定 url 无关。

实际上这不会发生。解决方法是手动提供所有链接参数:

<g:link action="action" controller="controller" params="[duplicated entries from url mappings]">my custom params link mapped in UrlMappings</g:link>

如果页面参数完全作为 url 参数传递,则该参数会变成一个带有自定义映射以及其余页面参数的怪异 url。

4

1 回答 1

1

没有重复。您需要定义路径中定义的参数(只是占位符)。如果您生成链接,则需要提供这些参数的。这些值不能自动导出。

您唯一能做的就是使用namedMappings美化符号。这样做的好处是,如果您忘记传递一些必需的变量,您至少会收到一条错误消息。

或者您定义自己的链接tag,它会自动从全局params地图中过滤。

于 2012-09-21T13:33:45.457 回答