Comment changer le format de modèle de date Django par défaut?
J'ai des dates dans isoformat dans la base de données, %Y-%m-%d
cependant, lorsque la date est transmise au modèle, elle apparaît comme quelque chose comme Oct. 16, 2011
.
Y a-t-il de toute façon que je puisse manipuler le format à ce que je veux?
6 réponses
Dans votre modèle, vous pouvez utiliser Django date
Filtre. Par exemple:
<p>Birthday: {{ birthday|date:"M d, Y" }}</p>
Donne:
Anniversaire: 29 Janvier 1983
Plus d'exemples de formatage dans les documents filtre de date .
Définir à la fois DATE_FORMAT
et USE_L10N
Pour apporter des modifications à L'ensemble du site dans Django 1.4.1, ajoutez:
DATE_FORMAT = "Y-m-d"
Dans votre fichier settings.py
et modifier:
USE_L10N = False
Depuis l10n remplace DATE_FORMAT
Ceci est documenté à: https://docs.djangoproject.com/en/dev/ref/settings/#date-format
Utilisez simplement ceci
{{you_date_field|date:'Y-m-d'}}
Cela montrera quelque chose comme-2016-10-16 vous pouvez utiliser le format que vous voulez.
Afin de changer le format de la date views.py et puis attribuez - le au modèle.
# get the object details
home = Home.objects.get(home_id=homeid)
# get the start date
_startDate = home.home_startdate.strftime('%m/%d/%Y')
# assign it to template
return render_to_response('showme.html'
{'home_startdate':_startDate},
context_instance=RequestContext(request) )
Si vous avez besoin d'afficher la date et l'heure courtes (11/08/2018 03:23 a. m.), Vous pouvez le faire comme ceci:
{{your_date_field|date:"SHORT_DATE_FORMAT"}} {{your_date_field|time:"h:i a"}}
Les Détails de cette balise ici et plus sur les dates selon le format donné ici
Exemple:
<small class="text-muted">Last updated: {{your_date_field|date:"SHORT_DATE_FORMAT"}} {{your_date_field|time:"h:i a"}}</small>