2013-07-14 3 views
5

क्या फ्लास्क का url_for क्वेरी स्ट्रिंग्स के लिए स्ट्रिंग सीमा है?क्या फ्लास्क की url_for क्वेरी स्ट्रिंग के लिए स्ट्रिंग सीमा है?

url_for('verify', t='e5e781eef6f1fa9d9062c7831ae7ec5bed3b67ac', _external=True) 

यह रिटर्न:

http://127.0.0.1:5000/verify?t=e5e781eef6f1fa9d9062c783 

मूल स्ट्रिंग 40 अक्षर है, उत्पन्न क्वेरी स्ट्रिंग 24 वर्णों की है।

क्या चल रहा है?

+3

आप अपने विचार को कैसे परिभाषित करते हैं क्योंकि उदाहरण के लिए 'app.add_url_rule ('/ ', 'सत्यापित करें', लैम्ब्डा टी: 'हैलो') 'और' app.add_url_rule ('/',' verify ', lambda:' हैलो ')' मेरे लिए सही मूल्य वापसी? क्या आपके पास 'app.url_defaults' या' app.url_default_functions' के साथ कोई अन्य कुशलताएं हैं? – tbicr

+0

यह वास्तव में मेरे लिए अजीब लगता है कि आप मार्ग के हिस्से के रूप में पैरामीटर प्राप्त कर रहे हैं। मैं ''/verify/ '' जैसे कुछ का उपयोग करने का प्रयास करूंगा। –

उत्तर

1

मैं खरोंच

from flask import Flask, url_for 
app = Flask(__name__) 

@app.route("/") 
def hello(): 
    print url_for('hello', t='e5e781eef6f1fa9d9062c7831ae7ec5bed3b67ac', _external=True) 
    return "Hello World!" 

if __name__ == "__main__": 
    app.run() 

>>> * Running on http://127.0.0.1:5000/ 
>>> http://127.0.0.1:5000/?t=e5e781eef6f1fa9d9062c7831ae7ec5bed3b67ac 

यह सही यूआरएल रिटर्न से इस व्यवहार को पुन: पेश नहीं कर सकते। आपके Jinja टेम्पलेट आउटपुट में शायद एक समस्या हो सकती है।

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