Mam daty w isoformat w db, %Y-%m-%d
jednak kiedy data jest przekazywana do szablonu, wychodzi jako coś jak Oct. 16, 2011
.Jak zmienić domyślny format szablonu daty Django?
Czy w ogóle mogę manipulować formatem do tego, co chcę?
Mam daty w isoformat w db, %Y-%m-%d
jednak kiedy data jest przekazywana do szablonu, wychodzi jako coś jak Oct. 16, 2011
.Jak zmienić domyślny format szablonu daty Django?
Czy w ogóle mogę manipulować formatem do tego, co chcę?
w szablonie, można użyć date
filtr Django. Np .:
<p>Birthday: {{ birthday|date:"M d, Y" }}</p>
Daje:
Urodziny: 29 Sty, 1983
więcej przykładów formatowania w date filter docs.
Myślę, że działa to tylko wtedy, gdy data jest podana jako obiekt datetime. Co jeśli jest to tylko ciąg przekazany z widoku? –
Dla dowolnego ciągu zawierającego datę/godzinę, prawdopodobnie przetworzyłbym go w datetime Pythona w kodzie widoku. (Lub nawet wcześniej, jeśli to możliwe - gdziekolwiek ten ciąg daty pojawia się po raz pierwszy w moim kodzie.) Ale jeśli naprawdę chcesz używać ciągów do przekazywania datetimes do szablonów Django, [ta odpowiedź] (http://stackoverflow.com/a/ 33188293/647002) wygląda na pomocny. – medmunds
Dobra odpowiedź, akceptuję to. ;) – neuronet
Set zarówno DATE_FORMAT
i USE_L10N
Aby wprowadzić zmiany dla całej witryny w Django 1.4.1 dodaje się:
DATE_FORMAT = "Y-m-d"
do pliku settings.py
i EDIT:
USE_L10N = False
ponieważ l10n zastępuje DATE_FORMAT
Jest to udokumentowane na: https://docs.djangoproject.com/en/dev/ref/settings/#date-format
Aby zmienić format daty w pliku views.py, a następnie przypisać go do szablonu.
# 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))
Nie jestem pewien, jak to zmienić w pliku ustawień –
W ten sam sposób zmieniasz każde inne ustawienie. –
Odsyłacz do dokumentów nie jest tak naprawdę odpowiedzią, dlatego też wzgardził tą i wzniosłą odpowiedzią medmundów. – neuronet