मेरे पास कुछ हद तक रिकॉर्ड्स हैं जिन्हें मैं गणना किए गए मान के आधार पर सॉर्ट करना चाहता हूं। अगर मैं इसे एक सूची देdjango - एक सूची को एक क्वेरीसेट में वापस कनवर्ट करें
class Profile(models.Model):
...
@property
def reputation(self):
...
दुर्भाग्य से सामान्य दृश्य एक क्वेरीसमूह वस्तु की उम्मीद और एक त्रुटि फेंकता है: ... जवाब over here गया तो जैसे:
sorted(Profile.objects.all(), key=lambda p: p.reputation)
इस तरह एक प्रोफाइल वर्ग पर
।
इस है कि एक क्वेरीसमूह
या ...
मैं एक क्वेरीसमूह किसी भी तरह के लिए एक सूची परिवर्तित कर सकते हैं देता है करने के लिए एक तरीका है? django docs में ऐसा कुछ नहीं मिला।
मुझे उम्मीद है कि डेटा को denormalize नहीं है, लेकिन मुझे लगता है कि अगर मुझे करना होगा तो मुझे लगता है।
अपडेट/उत्तर:
ऐसा लगता है कि एक क्वेरीसमूह वापस पाने के लिए एक ही रास्ता आप एसक्यूएल प्रश्नों में अपने तर्क के सभी प्राप्त कर सकते हैं है।
जब यह संभव नहीं है, (मुझे लगता है कि) आप डेटा
एक बेहतर सवाल नहीं है "मैं एक सामान्य दृश्य में एक सूची (या शब्दकोश) कैसे पास कर सकता हूं"? मुझे लगता है कि अगर आपने इसे हल किया है तो इससे कोई फर्क नहीं पड़ता कि आपने इसे एक क्वेरीसेट में परिवर्तित करके किया है या नहीं ... –
हाँ ... यह है, लेकिन मैं सिर्फ यह जानना चाहता था कि इसे बदलने के लिए एक आसान तरीका है या नहीं जेनेरिक विचारों को छोड़ने से पहले एक क्वेरीसेट;) – Jiaaro
मोड, यह एक डुप्लिकेट नहीं है। यह एक अलग सवाल है जिसका जवाब है, "आप ऐसा नहीं कर सकते हैं, इसलिए आपको कुछ और करना है।" दूसरे प्रश्न में "कुछ और" वर्णित है। – Jiaaro