2011-10-17 15 views
7

मैं अपने params मानचित्र पर एक एकल पैरामीटर जोड़ना चाहता हूं, और बाकी को एक लिंक में जोड़ना चाहता हूं। पल में, मैं केवल params बाँध प्रतिष्ठित इस प्रकार है:Grails - पैराम्स मानचित्र में पैरामीटर जोड़ें

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

मैं params नक्शे के लिए एक पैरामीटर कैसे जोड़ सकते हैं?

आपकी सहायता के लिए अग्रिम धन्यवाद। सादर,

संपादित करें:

ठीक है, मैं यह करने के लिए एक रास्ता खोजने के लिए है।

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

मुझे नहीं पता कि ऐसा करने के लिए और भी Grails- जैसा तरीका है। यदि कोई है, तो मुझे इसे सीखने के लिए बाध्य किया जाएगा;)

+0

आप अपने लिंक का टेक्स्ट बदलना चाहते हैं, क्योंकि यह काफी अनुचित है। विषय पर, आप किस बिंदु पर डेटा बांधने की कोशिश कर रहे हैं? – Joseph

+0

हाय जोसेफ, यदि आप जोर देते हैं तो मैं टैग को हटा दूंगा, लेकिन 'पैराम्स' मानचित्रों के साथ काम करने के लिए, क्या आप उस डेटाबेस को कॉल नहीं करेंगे? –

+0

बीटीडब्लू बर्ट, मुझे लगता है कि मुझे लगता है कि मैंने अपनी पत्नी को और अधिक आक्रामक तरीके से हराया है :) लेकिन आपकी पसंद :) –

उत्तर

2

यदि आपको बार-बार ऐसा करना है, तो आप g:link रैपर टैग लाइब्रेरी में पोस्ट किए गए उत्तर का उपयोग कर सकते हैं, क्योंकि टैग लाइब्रेरीज़ के पास params तक पहुंच है और request

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

और जीएसपी में:

:

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

आप जीएसपी से अपने स्वयं के कस्टम पैरामीटर नक्शे के साथ टैग का उपयोग करना चाहते हैं, तो आप भी टैग लाइब्रेरी में निम्नलिखित का उपयोग कर सकते

attr.params = attr.params + ['forwardURI': request.forwardURI] 
संबंधित मुद्दे