Seite 1 von 1

Query-Filter mit Tag, Monat und Jahr

Verfasst: Mittwoch 23. Dezember 2020, 19:17
von Mawilo
Hallo,

anscheinend habe ich eine weihnachtliche-Python-Django-Blockade. Ich habe in Django-Model mit einem Feld:

Code: Alles auswählen

pub_date = models.DateTimeField(default=datetime.datetime.now, verbose_name='Veröffentlicht am')
In der Datei views.py ein view:

Code: Alles auswählen

def entry_detail_view(request, year, month, day, slug):
    pub_date = datetime.datetime(year=year, month=month, day=day)
    entry = Entry.objects.filter(slug=slug,
                                 status=Entry.LIVE_STATUS,
                                 pub_date__year=pub_date.year,
                                 pub_date__month=pub_date.month,
                                 pub_date__day=pub_date.day,
                                 )
In der Datenbank habe ich einen Eintrag mit Datum 2020-12-01 18:39:27.000000.

Bild


Das Problem ist nun, dass der Eintrag nur gefunden wird, wenn ich ohne Monat und Tag suche (also ohne die Einträge pub_date__month=pub_date.month und pub_date__day=pub_date.day. Sobald entweder der Tag oder der Monat in den Filter eingeschlossen wird, bleibt die Suche leer. Die übergebenen Daten sind aber aus meiner Sicht richtig.
Bild


Hat jemand eine Idee, wo der Fehler liegt?

Viele Grüße
Stephan