/ / जेसन में 'अतिरिक्त' स्टेटमेंट का उपयोग करने वाले क्वेरी को प्रारूपित करने के लिए कैसे सीरियल करें? - django, django- मॉडल

जेएसओ को जेएसओएन में 'अतिरिक्त' कथन का उपयोग करने वाले क्वेरीसेट को प्रारूपित करने के लिए कैसे क्रमबद्ध करें? - django, django-मॉडल

मैं एक क्वेरीस को क्रमबद्ध करना चाहता हूं जिसमें ए शामिल है अतिरिक्त बयान:

region_list = Region.objects.extra(select={ "selected": "case when id = %s then 1 else 0 end" % (new_region.id)}).all()

मैं नीचे दिए गए कथन का उपयोग क्रमबद्ध करने के लिए करता हूं

return HttpResponse(serializers.serialize("json", region_list), mimetype="application/json")

लेकिन जब मैं ब्राउज़र में json परिणाम प्राप्त करता हूं, तो केवल क्षेत्र मॉडल के क्षेत्र दिखाई देते हैं, चयनित क्षेत्र का विघटन।

मैं कैसे इसे ठीक कर सकता हूं?

उत्तर:

जवाब के लिए 0 № 1

एक थोड़ा लंबे समय तक समाधान JSON के माध्यम से वस्तुओं को डंप करने के लिए होगा Django पिस्टन"जेएसओनमितर वर्ग। जब आप अपने क्षेत्र के मॉडल को पिस्टन के साथ पंजीकृत करते हैं, तो आप कह सकते हैं कि किन क्षेत्रों को शामिल करना है, और वहां "चयनित" का उल्लेख करना है, और फिर अपने एनोटेशन का उपयोग यह सुनिश्चित करने के लिए करें कि पिस्टन हैंडलर में उपयोग किए गए क्वेरीसेट में वह सभी जानकारी है जो आप चाहते हैं।

या बस देखो कि पिस्टन यह कैसे करता है और, यदि आप पिस्टन के सभी नहीं चाहते हैं, तो बस उन बिटों की नकल करें जो आप करते हैं।