2016-06-29 8 views
0

Ich frage mich, ob es eine Möglichkeit im Django-Vorlagensystem gibt, das Datum abhängig von der Sprache zu formatieren.Ändern Sie das Datumsformat in Abhängigkeit von der Sprache

Wie, wenn meine Website in Englisch ist dieser Code {{ submitted_date | date }} wird wie folgt angezeigt: 29. Juni 2016

Aber wenn die Seite ist in Französisch desselben Code angezeigt, sollte dieses Format angezeigt werden: 27 juin 2016.

Gibt es eine Möglichkeit, Django zu sagen, dies zu tun, oder ich muss es nur mit if-Anweisungen fest codieren? (Aber wenn ich viele Sprachen bekam ?!)

Antwort

2

Der erste Satz in der locale-Dokumentation für date formatting sagt

Djangos Formatierungssystem anzeigen kann Daten, Zeiten und Zahlen in Vorlagen mit dem Format für das aktuelle Gebietsschema angegeben. Es behandelt auch lokalisierte Eingabe in Formularen.

Sie müssen also nichts tun, die Daten werden standardmäßig im aktuellen Gebietsschema lokalisiert.

+0

In der Tat ändern sie die Sprache des Datums (wie der Monat), aber es ändert nicht das Format. In Französisch soll der Monat nach dem Datum sein und kein Komma vor dem Jahr. Gibt es eine Möglichkeit, das zu erzwingen? – Emmurd

+1

Ich denke, das ist die Option für mich. https://docs.djangoproject.com/de/1.9/topics/i18n/formatting/#creating-custom-format-files – Emmurd

+0

Wenn ich mir diese Datei anschaue https://github.com/django/django/blob/master /django/conf/locale/fr/formats.py das Format ist gut. Es ist etwas seltsam mit dem Gebietsschalter vielleicht? – Emmurd

0

Aus einem Grund weiß ich nicht, standardmäßig Django nicht die Formateinstellungen verwenden, die von den Standarddateien festgelegt.

Per Beispiel: https://github.com/django/django/blob/master/django/conf/locale/fr/formats.py

Durch den Namen des gewünschten Formats hinzugefügt, die Vorlage für das Gebietsschema das gute Format anzuzeigen. {{ submitted_date | date:"DATE_FORMAT" }}

Danke, dass Sie mich auf die Spur gebracht haben!

Verwandte Themen