LoginSignup
2
1

More than 3 years have passed since last update.

DjangoのHTMLテンプレート

Last updated at Posted at 2020-05-02

はじめに

ここでは、djangoのHTMLテンプレートファイルの作成方法について解説します。
モデルとしては、前の記事に書いているSampleModelを利用するものとします。

HTMLファイルにおける変数、関数の埋め込み

HTMLファイル内で、{{ 変数名 }}とすると、views.pyから渡された変数をHTMLファイル内に埋め込むことができます。
また、{% 関数名 引数1 引数2 ... %}とすることで、関数を用いて表示内容を制御することもできます。

レコード一覧の表示

クラスベースビューの場合、表示するレコード一覧がモデル名_listとしてテンプレートに渡されます。
このレコード一覧を{% for %}を用いて一つずつ取り出して、表示します。
関数ベースビューの場合も同様に、モデルのレコード一覧をcontextとしてHTMLファイルに渡すようにすると良いでしょう。

app/samplemodel_list.html
{% for sample in samplemodel_list %}
    <h1>{{ sample.char_sample }}</h1>
    <p>{{ sample.text_sample }}</p>
{% endfor %}

個々のレコードの表示

クラスベースビューの場合、個々のレコードはモデル名としてテンプレートに渡されます。

app/samplemodel_detail.html
<h1>{{ samplemodel.char_sample }}</h1>
<p>{{ samplemodel.text_sample }}</p>

まとめ

ここでは、djangoのHTMLテンプレート作成の基本について解説しました。
次回は、テンプレートの継承やカスタムタグの作成について取り上げる予定です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1