तो दुर्भाग्यवश मैं खुद को ऐसी परिस्थिति में ढूंढता हूं जहां मुझे एक ही नाम के साथ एकाधिक पैरामीटर प्रदान करने वाले यूआरएल को संभालने के लिए मौजूदा पिलोन एप्लिकेशन को संशोधित करने की आवश्यकता है। निम्नलिखित ... डोमेन की तरह कुछ: पोर्ट/कार्रवाई ग = 1 & v = 3 & ग = 4पिलोन में एक यूआरएल से एक ही नाम के साथ कई पैरामीटर कैसे प्राप्त करें?
पारंपरिक मानकों इस तरह से पहुंचा जाता है ...
from pylons import request
c = request.params.get("c")
#or
c = request.params["c"]
यह वापस आ जाएगी " 4 "किसी भी मामले में मूल्य के रूप में, क्योंकि आखिरी मूल्य को अनदेखा करते हुए इन स्थितियों में मानक व्यवहार लगता है। हालांकि मुझे वास्तव में क्या चाहिए, दोनों को एक्सेस करने में सक्षम होना है। मैं request.params को प्रिंट करके कुछ इस तरह मिलता है ...
NestedMultiDict([(u'c', u'1'),(u'v', u'3'),(u'c', u'4')])
मैं नहीं या कि सी के लिए पहला मान पहुँच इसे में सूचकांक के लिए एक रास्ता मिल गया है, की कोशिश की।
मैं इस समस्या से संबंधित एक similar question पाया है, लेकिन पीएचपी के साथ हल:
इन पंक्तियों के साथकुछ मेरे लिए अच्छी तरह से काम करेगा, लेकिन शायद कुछ अजगर कोड है कि Pylons में फिट होगा। क्या किसी ने पहले ऐसा कुछ किया है?
फ़ॉर्मेटिंग को ठीक करने के लिए धन्यवाद! यह स्पष्ट रूप से इरादा से बाहर निकलने का तरीका नहीं निकला ... –
अगर मैं गलत हूं तो मुझे सही करें, लेकिन एक ही अनुरोध के भीतर कई कुंजी वस्तुएं मौजूद नहीं हो सकती हैं? यह सभी परिभाषाओं के खिलाफ है .. – Torxed
क्या आप कह रहे हैं कि एक ही नाम के साथ दो पैरामीटर नहीं होना चाहिए? यदि यह आपका प्रश्न है, तो मैं मानता हूं कि सर्वोत्तम अभ्यास इससे बचेंगे। यद्यपि यह सख्ती से मना नहीं है। उदाहरण के लिए, इस यूआरएल को अपने ब्राउज़र में दर्ज करने का प्रयास करें (https://www.google.com/search?q=one&q=two)। दो क्वेरी पैरामीटर हैं, इसलिए Google उन्हें दोनों को एक साथ जोड़ता है। यह कम या ज्यादा है जो मैं करने में सक्षम होना चाहता हूं। –