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

Django

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

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

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

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

当記事を通じて、

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

を徹底解説します

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

と表示されます

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

筆者プロフィール

筆者プロフィールアイコン

【現職】プロマネ/システムプランニング

【副業】ブログ(月間7万PV)/YouTube/Web・アプリ制作

【元】外資系金融機関の営業

コミュニケーション × ビジネススキル × 文章力 × プログラミングスキルを活かし、30後半からのIT系職へシフト。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

ChatGPTでLINEボット

【今なら無料】ChatGPTでLINEボットを作りました!

友だち追加

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: “表示形式” }}

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

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

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

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

✔当ブログは以下のような方に向けて書かれています

「Djangoでのアプリ開発を学びたい!」

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

✔当ブログ掲載の記事

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

ITCブログにご協力いただける方は、以下もご検討いただけると嬉しいです。

ITCへ投げ銭をする

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