Come confrontare datetime in Django?
-
19-09-2019 - |
Domanda
Supponiamo che io sono:
ds = datetime.datetime.now
dd = Entry.objects.get(pk=id).pub_date
Come confrontare 2 oggetti di cui sopra? Voglio ottenere la differenza di tempo tra di loro. Per favore aiutami a risolvere questo problema. Grazie mille!
Soluzione
Io parto dal presupposto che è un pub_date
django.db.models.DateField
, il che significa che è possibile trattarlo come un oggetto datetime.date
.
Se li si converte allo stesso tipo (sia datetime.datetime
o datetime.date
) e sottrarre l'uno dall'altro, si otterrà un esempio di datetime.timedelta
.
Come si utilizza datetime.datetime.now()
, se il vostro pub_date
è semplicemente una data piuttosto che un datetime, si può anche utilizzare ds = datetime.date.today()
invece:
>>> ds = datetime.date.today()
>>> dd = datetime.date(2009, 12, 9)
>>> ds - dd
datetime.timedelta(2) # 2 days ago
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow