में ऑब्जेक्ट्स को हटाते समय एक Django QuerySet पर इटरेट करना मुझे आश्चर्य है कि क्वार्सेट में ऑब्जेक्ट्स को हटाते समय Django QuerySet पर फिर से शुरू करने का सबसे अच्छा तरीका क्या है? उदाहरण के लिए, कहें कि आपके पास विशिष्ट समय पर प्रविष्टियों के साथ एक लॉग टेबल है, और आप उन्हें संग्रहित करना चाहते हैं ताकि प्रत्येक 5 मिनट में 1 से अधिक प्रविष्टियां न हों। मैं इस गलत हो सकता है पता है, लेकिन यह है कि मैं क्या करने के लिए जा रहा हूँ की तरह है:एक ही प्रश्नोत्तरी
toarchive = Log.objects.all().order_by("-date")
start = toarchive[0].date
interval = start - datetime.timedelta(minutes=5)
for entry in toarchive[1:]:
if entry.date > interval:
entry.delete()
else:
interval = entry.date - datetime.timedelta(minutes=5)
यह मान्य है, आप इस तरह से वस्तुओं को हटा सकते हैं। – Rohan
इस तरह की क्वेरीसेट पर लूपिंग करते समय हटाएं() का उपयोग करके, जब मैं मॉडल के व्यवस्थापक पृष्ठ पर जाता हूं तो रिक्त रिकॉर्ड्स रखें। ऐसा लगता है कि वस्तु पूरी तरह से हटा नहीं है। क्या गलत है? –