Query-Filter mit Tag, Monat und Jahr

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
Mawilo
User
Beiträge: 452
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

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
Antworten