2011-10-17 7 views
7

paramsマップに1つのパラメータを追加し、残りをリンクにバインドします。Grails - paramsマップにパラメータを追加する

<g:link class="email" controller="administrator" action="test" params="${params}">Link text</g:link> 

私はparamsマップにパラメータを追加することができますどのように次のように現時点では、私は古典的paramsをバインド?

ご協力いただきありがとうございます。 よろしく、

EDIT:

[OK]を、私はそれを行うための方法を見つける必要があります。

params="${params + ['forwardURI': request.forwardURI]}" 

Grailsのようなやり方があるかどうかわかりません。あなたがこれを学ぶ義務があります;)

+0

あなたのリンクのテキストを変更したい場合は、かなり不適切です。トピックについて、どの時点でデータをバインドしようとしていますか? – Joseph

+0

こんにちはJoseph、 あなたが主張している場合、私はタグを削除しますが、そのように 'params'マップで作業すると、そのデータバインディングを呼び出さないでしょうか? –

+0

BTWバート、私は「私は私の妻をもっと攻撃的な方法で打ち負かす」と思う:)しかし、あなたの選択: –

答えて

2

あなたがこれを繰り返す必要がある場合は、タグライブラリがparamsにアクセスできるように、g:linkラッパータグライブラリに投稿した回答を使用することができます。 request

:あなたはGSPから独自のカスタムパラメータマップでタグを使用する場合は

<g:forwardAwareLink class="email" controller="administrator" action="test">Link text</g:forwardAwareLink> 

が、あなたはまた、タグライブラリに次のように使用することができます。

def forwardAwareLink = { attr, body -> 
    attr.params = params + ['forwardURI': request.forwardURI] 
    out << g.link(attr, body) 
} 

そしてGSPで

attr.params = attr.params + ['forwardURI': request.forwardURI] 
関連する問題