我想在我的 params
中添加一个参数映射,并将其余部分绑定(bind)在链接中。目前我只绑定(bind)params
经典如下:
<g:link class="email" controller="administrator" action="test" params="${params}">Link text</g:link>
如何向
params
添加参数 map ?预先感谢您的帮助。
问候,
编辑:
好的,我已经找到了一种方法。
params="${params + ['forwardURI': request.forwardURI]}"
我不知道是否还有其他类似 Grails 的方法。如果有的话,我有义务学习它;)
最佳答案
如果您必须重复执行此操作,您可以使用您在 g:link
中发布的答案。包装标签库,因为标签库可以访问 params
和 request
.
def forwardAwareLink = { attr, body ->
attr.params = params + ['forwardURI': request.forwardURI]
out << g.link(attr, body)
}
在 gsp 中:
<g:forwardAwareLink class="email" controller="administrator" action="test">Link text</g:forwardAwareLink>
如果您想将标签与来自 gsp 的自定义参数映射一起使用,您还可以在标签库中使用以下内容:
attr.params = attr.params + ['forwardURI': request.forwardURI]
关于data-binding - Grails - 向 params 映射添加参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7798083/