2012-02-02 3 views
9

में अनुरोध से फ़ॉर्म पैरामीटर मान प्राप्त करें Play 2.0 स्कैला एप्लिकेशन में मेरे पास एक पैरामीटर के साथ फ़ॉर्म के साथ सरल पृष्ठ है। यह दूसरे पृष्ठ पर रीडायरेक्ट करता है, जहां मैं फॉर्म से पैरामीटर के साथ कुछ करना चाहता हूं। मैं इसे कैसे प्राप्त कर सकता हूँ?Play 2.0 स्कैला नियंत्रक

मैं की तरह

request.formData.get("paramName") 

मैं जानता हूँ कि request.body कुछ के लिए देख रहा हूँ, लेकिन अभी भी यह कैसे से एकल पैरामीटर मान प्राप्त करने के लिए पता नहीं है।

उत्तर

9

मैं कहूंगा कि फॉर्म डेटा पुनर्प्राप्त करने का सबसे आसान तरीका play.api.data में Form संरचना का उपयोग करना है। तो यहाँ कैसे आप play2.0-RC1

val form = Form[(String, String)](
    tuple(
    "paramName1" -> nonEmptyText, 
    "paramName2" -> nonEmptyText 
) 
) 

form.bindFromRequest.fold(
    failure =>(),//do smthg with the failure info 
    { case (p1, p2) => println(p1);println(p1)} 
) 
इसके बजाय nonEmptyText का उपयोग कर आप of[String] उपयोग कर सकते हैं की

में यह कर सकता है।

Forms Helper पर मैपिंग के लिए अपने हाथों में क्या रखा गया है, इसकी जांच करें। कुछ अन्य जानकारी जो आपको आगे मदद करनी चाहिए here हैं।

6

निम्नलिखित के साथ एक पोस्ट अनुरोध काम कर सकते हैं, तो

अनुरोध() शरीर() asFormUrlEncoded() मिल ("myparam") [0]।।।

+5

स्कैला में यह है: 'request.body.asFormUrlEncoded.get (" myparam ")' – jbnunn

+0

यह इतना बुरा है लेकिन इसका उत्तर है – decapo