Exemples de comment calculer le temps depuis maintenant dans un template django:
Table des matières
Temps depuis maintenant
Prenons par exemple le modèle suivant (défini dans le fichier models.py):
class Post(models.Model):
content = models.TextField()
date_created = models.DateTimeField(default=datetime.now)
et la vue:
def my_view(request):
post_obj_list = Post.objects.all()
context = {'post_obj_list':post_obj_list}
return render(request, "myapp/post.html", context )
Si nous voulons afficher le temps depuis qu'un article a été créé dans un template django, une solution est d'utiliser timesince:
{% for post_obj in post_obj_list %}
{{ post_obj.date_created|timesince }}
{% endfor %}
Il affichera le temps écoulé depuis la création de l'article, par exemple:
1 hour 19 minutes
Temps depuis une date donnée
Remarque: il est également possible d'obtenir l'heure depuis une date donnée en utilisant la syntaxe suivante:
{{ post_obj.date_created|timesince:thread_date }}
remplacer "thread_date" par un datetime object.