मेरे पास एक मॉडल है जो मेरी साइट पर मौजूद चित्रों का प्रतिनिधित्व करता है। मुख्य वेबपेज पर मैं उनमें से कुछ दिखाना चाहूंगा: सबसे नया, एक जो सबसे अधिक समय तक नहीं देखा गया था, सबसे लोकप्रिय एक और एक यादृच्छिक।
मैं Django 1.0.2 का उपयोग कर रहा हूं।
जबकि उनमें से पहले 3 django मॉडल का उपयोग करना आसान है, पिछले एक (यादृच्छिक) ने मुझे कुछ परेशानी दी। मैं इसे अपने विचार में कुछ इस तरह से कोड कर सकता हूं:
number_of_records = models.Painting.objects.count()
random_index = int(random.random()*number_of_records)+1
random_paint = models.Painting.get(pk = random_index)
यह ऐसा कुछ नहीं दिखता है जिसे मैं अपने विचार में रखना चाहता हूं - यह पूरी तरह से डेटाबेस अमूर्त का हिस्सा है और मॉडल में होना चाहिए। इसके अलावा, यहां मुझे हटाए गए अभिलेखों की देखभाल करने की आवश्यकता है (तब सभी रिकॉर्डों की संख्या मुझे सभी संभावित प्रमुख मूल्यों को कवर नहीं करेगी) और शायद बहुत सी अन्य चीजें।
कोई अन्य विकल्प कि मैं यह कैसे कर सकता हूं, अधिमानतः मॉडल अमूर्त के अंदर किसी तरह?