मेरे पास एक Django व्यू है जो एक GET अनुरोध को संसाधित करता है। मैं को सभी के लिए को छोड़कर सभी स्ट्रिंग्स को शामिल करने के लिए क्वेरी स्ट्रिंग को पुनर्निर्माण करना चाहता हूं।Django - एक चर के बिना क्वेरी स्ट्रिंग को पुनर्निर्मित करें
मैं शुरू में सूची समझ उपयोग कर रहा था:
>>> from django.http import QueryDict
>>> q = QueryDict('a=2&b=4&c=test') // <--- make believe this is request.GET
>>> z = QueryDict('').copy()
>>> z.update(dict([x for x in q.items() if x[0] != 'b']))
>>> z.urlencode()
लेकिन मेरा मानना है कि यह एक बेहतर समाधान हो सकता है:
>>> from django.http import QueryDict
>>> q = QueryDict('a=2&b=4&c=test') // <--- make believe this is request.GET
>>> z = q.copy()
>>> del z['b']
>>> z.urlencode()
किसी को भी एक और भी बेहतर दृष्टिकोण के बारे में सोच सकते हैं?
Yup @danny। क्षमा करें मैंने 'del' भाग को गलत टाइप किया। लेकिन उदाहरण को स्पष्ट रखने के लिए मैंने अभी 'q' का उपयोग किया था। –
हम्म .. आपके संपादन से आपका क्या मतलब है? मुझे नहीं लगता कि मैं 'ए' चर का उपयोग करता हूं। लेकिन फिर भी, यह सिर्फ एक उदाहरण है। –
मैं केवल 'request.GET [' a ']' तक पहुंचने का प्रयास कर रहा हूं, जब मैं 'www.yourwebsite.com?a=' के बजाय 'www.yourwebsite.com' पर जाता हूं, तो मैं KeyError के लिए बाहर निकलने का कह रहा था। 2 और बी = 3' लेकिन मुझे लगता है कि यह विषय बंद है क्योंकि यह सिर्फ एक उदाहरण है और आपका पूरा दृश्य – danny