मॉडल 'दर्ज' में एक डेटाटाइम फ़ील्ड है। मैं डेटा को सभी प्रविष्टियों को खोजने के लिए क्वेरी करना चाहता हूं, जहां दोपहर (start_time) और 5:00 बजे (end_time) के बीच बनाया गया है।मैं समय-समय पर फ़ील्ड में समय-समय पर फ़िल्टर कैसे करूं?
selected = Entry.objects.filter(entered__gte=start_time, entered__lte=end_time)
(के रूप में मैं उम्मीद) मैं की कोई त्रुटि मिलती है:
"ValidationError: Enter a valid date/time in YYYY-MM-DD HH:MM[:ss[.uuuuuu]] format."
तो मैं जानता हूँ कि मैं __year उपयोग कर सकते हैं तो मैं कोशिश की।
selected = Entry.objects.filter(entered__time__gte=start_time, entered__time__lte=end_time)
मैं की कोई त्रुटि मिलती है:
"FieldError: Join on field 'start' not permitted. Did you misspell 'time' for the lookup type?"
इस पल के रूप में यह विकल्प मैं पसंद करता हूं। मुझे अभी भी एक बेहतर विकल्प चाहिए। –
django में घंटे/मिनट पर फ़िल्टर करना संभव होगा 1.8: https://docs.djangoproject.com/en/1.8/ref/models/querysets/#hour Entry.objects.filter (enter__hour__gte = 9, enter__hour__lte = 17) – imposeren
दुर्भाग्यवश, Django 1.8 में यह संभव नहीं है। आप केवल सटीक घंटे के मिलान के लिए फ़िल्टर कर सकते हैं: 'Entry.objects.filter (enter__hour = 9) ' –