Wie Datetime in Django vergleichen?
-
19-09-2019 - |
Frage
Angenommen, ich habe:
ds = datetime.datetime.now
dd = Entry.objects.get(pk=id).pub_date
Wie 2 Objekte oben vergleichen? Ich mag die Zeitdifferenz zwischen ihnen zu bekommen. Bitte helfen Sie mir dieses Problem zu lösen. Vielen Dank!
Lösung
Ich gehe davon aus, dass pub_date
ein django.db.models.DateField
ist, was bedeutet, dass Sie es als datetime.date
Objekt behandeln können.
Wenn Sie sie auf die gleiche Art (entweder datetime.datetime
oder datetime.date
) umwandeln und subtrahiert von dem anderen, werden Sie eine Instanz von datetime.timedelta
erhalten.
Wie Sie datetime.datetime.now()
verwenden, wenn Ihr pub_date
einfach ein Datum ist eher als ein Datetime, können Sie auch verwenden ds = datetime.date.today()
statt:
>>> ds = datetime.date.today()
>>> dd = datetime.date(2009, 12, 9)
>>> ds - dd
datetime.timedelta(2) # 2 days ago
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow