को स्क्वैश करता है मुझे Django's Querydict bizarre behavior: bunches POST dictionary into a single key और Unit testing Django JSON View के समान समस्या है। हालांकि, इन धागे में कोई भी प्रश्न/प्रतिक्रिया वास्तव में निर्दिष्ट समस्या पर इंगित नहीं करती है। मैं एक नेस्टेड JSON ऑब्जेक्ट के साथ अनुरोध भेजने के लिए Django के परीक्षण क्लाइंट का उपयोग करने की कोशिश कर रहा हूं (जो मैंने जेएसओएन ऑब्जेक्ट्स के साथ गैर-JSON मानों के साथ अच्छी तरह से काम किया है)।डीजेगो टेस्ट क्लाइंट नेस्टेड JSON
प्रयास # 1:
response = c.post('/verifyNewMobileUser/',
{'phoneNumber': user.get_profile().phone_number,
'pinNumber': user.get_profile().pin,
'deviceInfo': {'deviceID': '68753A44-4D6F-1226-9C60-0050E4C00067', 'deviceType': 'I'}})
आप देख सकते हैं, मैं अपने अनुरोध डेटा के भीतर एक नेस्टेड JSON ऑब्जेक्ट है: यहाँ मेरी प्रारंभिक कोड है। बहरहाल, यह क्या request.POST लग रहा है जैसे:
<QueryDict: {u'phoneNumber': [u'+15551234567'], u'pinNumber': [u'4171'], u'deviceInfo': [u'deviceType', u'deviceID']}>
प्रयास # 2: तो मैं करने की कोशिश की है, इस प्रकार सामग्री प्रकार पैरामीटर पर जोड़ने:
response = c.post('/verifyNewMobileUser/',
{'phoneNumber': user.get_profile().phone_number,
'pinNumber': user.get_profile().pin,
'deviceInfo': {'deviceID': '68753A44-4D6F-1226-9C60-0050E4C00067', 'deviceType': 'I'}},
'application/json')
और अब मैं क्या मिलेगा अनुरोध के लिए। POST
<QueryDict: {u"{'deviceInfo': {'deviceType': 'I', 'deviceID': '68753A44-4D6F-1226-9C60-0050E4C00067'}, 'pinNumber': 5541, 'phoneNumber': u' 15551234567'}": [u'']}>
मैं बस इतना करना चाहता हूं कि मेरे अनुरोध डेटा के लिए नेस्टेड dict निर्दिष्ट करने में सक्षम हो। क्या इसे करने का कोई आसान तरीका है?
JSON.dumps इसे करने का सबसे अच्छा तरीका है। यह स्वीकार्य उत्तर होना चाहिए। – boatcoder