Cette:
{{ wpis.entry.lastChangeDate|date:"D d MY" }}
me donne (pourquoi?):
2009-07-24 21:45:38.986156
et je ne sais pas comment sauter la partie de fraction …
Dans mon modèle j’ai:
addedDate = models.DateTimeField(default=datetime.now)
Vous pouvez utiliser ceci:
addedDate = datetime.now().replace(microsecond=0)
C’est exactement ce que vous voulez. Essaye ça:
{{ wpis.entry.lastChangeDate|date:'Ymd H:i' }}
Je pense que wpis.entry.lastChangeDate
a été transformé en une chaîne dans la vue avant d’arriver au modèle.
Afin de vérifier cette hypothèse, vous pouvez simplement vérifier dans la vue si elle possède une propriété / méthode que seules les chaînes ont, comme par exemple wpis.entry.lastChangeDate.upper
, et voir ensuite si le modèle se bloque.
Vous pouvez également créer votre propre filtre personnalisé et l’utiliser à des fins de débogage, en lui permettant d’inspecter l’object et en écrivant les résultats de l’inspection sur la page ou simplement sur la console. Il pourrait inspecter l’object et vérifier s’il s’agit bien d’un DateTimeField.
Sur un avis sans rapport, pourquoi n’utilisez-vous pas models.DateTimeField(
auto_now_add
=True)
pour définir la date et l’heure de création?