मैं Django के ORM के आस-पास अपना सिर प्राप्त करने में संघर्ष कर रहा हूं।तालिका फ़ील्ड से अलग मान चुनें
SELECT DISTINCT myfieldname FROM mytable
(या वैकल्पिक रूप से)
SELECT myfieldname FROM mytable GROUP BY myfieldname
मैं: मुझे क्या करना चाहते हैं निम्न में से एक के बराबर मेरी मेज पर एक क्षेत्र के भीतर विशिष्ट मानों की एक सूची प्राप्त .... है डी कम से कम कच्चे एसक्यूएल का उपयोग करने से पहले Django रास्ता करना पसंद है। उदाहरण के लिए, एक मेज के साथ:
आईडी, सड़क, शहर
1, मुख्य सड़क, हल
2, अन्य स्ट्रीट, हल
3, Bibble मार्ग, लीसेस्टर
4, एक और रास्ता, लीसेस्टर
5, हाई स्ट्रीट, Londidium
मैं प्राप्त करना चाहते हैं:
हल, लीसेस्टर, Londidium।
वास्तव में है कि काम करता है। तथापि! मैं इसे अपने सभी मॉडलों पर काम नहीं कर सका। दुर्भाग्य से, यह कुछ पर काम किया लेकिन दूसरों को नहीं। उन लोगों के लिए जिनके पास मेटा ऑर्डरिंग है, यह काम नहीं करता है। तो, आपको पहले क्वेरीसेट पर ऑर्डर करना होगा। मॉडल .Shop.objects.order_by()। मान ('शहर')। विशिष्ट() – alj
यह ध्यान रखना महत्वपूर्ण है कि 'value_list' वास्तव में एक सूची नहीं लौटाता है। यह एक क्वेरीसेट की तरह कुछ देता है।मुझे हमेशा मूल्य_सूची कॉल के चारों ओर सूची() का उपयोग करना उपयोगी लगता है। – dheerosaur
'values_list' ValuesListQuerySet देता है जो एक पुनरावर्तक है। सूची में कास्टिंग आसान हो सकता है, लेकिन प्रदर्शन के दौरान भी हमला कर सकते हैं जब सभी पंक्तियों का मूल्यांकन एक बार में किया जाना चाहिए, खासकर बड़े डेटा सेट के साथ। –