2011-08-08 6 views
5

शीर्षक भ्रामक हो सकता है। मैं वास्तव में क्या चाहता हूं कि नियंत्रक के भीतर बंद होने का नाम जानना है। लेकिन ग्रोवी में बंद हमेशा अज्ञात होते हैं, इसलिए बंद होने का कोई नाम नहीं है। लेकिन बंद करने के लिए एक चर को आवंटित किया गया है, और मुझे आश्चर्य है कि क्या मैं उस चर का नाम प्राप्त कर सकता हूं। शायद एक उदाहरण मदद करेगा।ग्रोवी में, एक बंदरगाह को बंद करने वाले चर के नाम को जानने का कोई तरीका है?

def get_data = { 
     Map results = [ 'errorCode' = -1, 'method' : 'get_data' ] 
     ... 
     render results as JSON 
    } 

मानचित्र में कहा जाता है परिणाम एक तत्व 'विधि' कहा जाता है कि मैं बंद पकड़े अधिक स्पष्ट होने के (इस बंद के नाम पर या चर को असाइन करना चाहते है: एक Grails नियंत्रक में मैं निम्नलिखित है कल्पना)। क्या यह संभव है? यहां विचार यह है कि मैं परिणाम मानचित्र को सामान्यीकृत करना चाहता हूं और स्वचालित रूप से 'विधि' नामक तत्व को पॉप्युलेट करना चाहता हूं। सहजता से ऐसा लगता है कि यह संभव होना चाहिए, लेकिन मुझे ऐसा कोई भी उदाहरण नहीं मिला है जो बताता है कि कैसे। किसी भी मदद की बहुत सराहना की।

उत्तर

9

मुझे नहीं लगता कि आप सामान्य मामले में चर का नाम प्राप्त कर सकते हैं। यह केवल एक संदर्भ है, और बंद करने के लिए उनमें से कई को सौंपा जा सकता है।

यह नियंत्रक कोड में वर्तमान कार्य के नाम पर प्राप्त करने के लिए बहुत आसान है, तथापि,:

def get_data = {  
    def results = ['method': actionName] 
} 

देखें documentation

संबंधित मुद्दे

 संबंधित मुद्दे