【Django初学者向け】 dateフィルタで日付の表示形式を変更する方法

Django

(最終更新月:2021年12月)

「HTMLテンプレートで日付の表示方法を変更したい!」

「dateフィルタってどうやって使うの?」

というDjango初学者の方へ向けての記事となります

当記事を通じて、

  • 日付をお好きな方法で表示できる「dateフィルタ」について

を徹底解説します

通常、DateTimeフィールドをテンプレートで表示すると、

と表示されます

dateフィルタの書き方からご紹介していきます

dateフィルタの書き方

{{ date変数|date: “表示形式”}}

DateTimeもしくはDateフィールドの変数を、お好きな「表示形式」で表示する方法です

例えば、年数のみで表示したい場合は、

{{ date変数|date: "Y" }}

とすると、

2021

年数だけ表示されます

日付と文字列を組み合わせることもできます

{{ date変数|date: "j日だよ!" }}

22日だよ!

日付に加えて、入力した文字列も一緒に表示されます

上記の例では「Y」や「j」をフォーマット文字と言い、年や日にちに置き換えられて表示されるものになります

次章で代表的なフォーマット文字をご紹介します

代表的なフォーマット文字

Y4桁“2021”
y2桁“21”
mゼロ詰め“01” – “12”
n“1” – “12”
Fテキスト形式“1月”-“12月”
曜日l(エル)テキスト形式“月曜日”
dゼロ詰め“01” – “31”
j“1” – “31”
H24時間表記
(ゼロ詰め)
“00” – “23”
G24時間表記“1” – “23”
h12時間表記
(ゼロ詰め)
“00” – “12”
g12時間表記“1” – “12”
iゼロ詰め“00” – “59”
sゼロ詰め“00” – “59”

これらのフォーマット文字と表示したい文字列を組み合わせことで、任意の値が表示されます

テキスト形式の時はsettings.pyのTIME_ZONEの設定に合わせて表示されるよ!

まとめ

日付の表示形式を変更するには、

{{ date変数|date: “表示形式” }}

とすることを覚えておきましょう!

フォーマット文字には様々な種類がありますので、覚えるのも大変です

必要なときは当ブログにいつでも戻ってきてください!

最後までご覧いただきありがとうございました!

当ブログでは、日報アプリ開発を通じて、Webアプリを一から開発し公開するまでを初学者の方でもわかるようにと記事を連載しています

「Djangoでのアプリ開発を学びたい!」
「Djangoで開発したアプリをWebで公開するにはどうするの?」

という方は必見です!

【Django】チュートリアル|日報アプリの開発から公開まで
Djangoのチュートリアルをお探しですか?具体的に「手を動かして作ってみたい!」という方へ向けて、誰でもできる簡易的な日報アプリの開発を通じて、Djangoの様々な機能に触れていくシリーズとなっています。PythonでWebアプリを作りたい方、必見の記事となります!

関連書籍

タイトルとURLをコピーしました