私はl10nを使用するプロジェクトに取り組んでいます。
ロケールをENに設定し、時刻(08:00)を表示しようとすると、次のようになります。
8 a.m.
ロケールをFRに設定すると、次のようになります。
08:00:00
しかし、それは次のようなものでなければなりません:
8h
なぜこのフォーマットを取得するのですか?適切なフォーマットを取得するにはどうすればよいですか?
私はl10nを使用するプロジェクトに取り組んでいます。
ロケールをENに設定し、時刻(08:00)を表示しようとすると、次のようになります。
8 a.m.
ロケールをFRに設定すると、次のようになります。
08:00:00
しかし、それは次のようなものでなければなりません:
8h
なぜこのフォーマットを取得するのですか?適切なフォーマットを取得するにはどうすればよいですか?
どうやら、FRロケールに設定されたデフォルトの時間形式はありません。
あなたができることはフォーマットモジュールを設定することです:
# myproject/settings.py
FORMAT_MODULE_PATH = 'myproject.formats'
それを作成します:
myproject/
formats/
__init__.py
fr/
__init__.py
formats.py
そして、フランス語の形式を定義します。
# myproject/formats/fr/formats.py
TIME_FORMAT = 'G:i'
私の理解では、ローカリゼーションを使用している場合はフォーマットを変更できるとは思いません:https ://docs.djangoproject.com/en/dev/topics/i18n/timezones/ 。
ですかUSE_L10N = True
?もしそうなら、それはオーバーライドsettings.TIME_FORMAT
し、settings.TIME_INPUT_FORMATS
値を付けます:https ://docs.djangoproject.com/en/dev/ref/settings/#time-format
選択した言語に基づいて、独自の「ローカリゼーション」コンテキストプロセッサまたはテンプレートフィルタを作成できます。