Django使用模版——初級(2)
2075 ワード
共通コマンド
if/else
基本的な使い方
さらに、は、 使用可能 for
基本的な使い方
ifequal/ifnotequal
基本的な使い方
コメント
コメントが必要な場合は、
変数の表示
変数を表示する必要がある場合は、
フィルタ
テンプレートフィルタは、変数が表示される前に変更できます.フィルタは、パイプ文字、例えば、次の
フィルタパイプは、1つのフィルタパイプの出力が次のパイプの入力として使用されてもよい.例えば、次のようにしてもよい.
フィルタはパラメータを持つことができ、パラメータはコロンに従った後、常に二重引用符で囲まれています.たとえば、次のようになります.
include
テンプレート継承
テンプレートは、継承によって多重化することができ、例えば、次のような
if/else
基本的な使い方
{% if condition %}
...
{% endif %}
#
{% if condition1 %}
...
{% elif condition2 %}
...
{% else %}
...
{% endif %}
さらに、
and
/or
を用いて複数の条件を組み合わせて判断することができるnot
変数に対して逆基本的な使い方
{% for i in items %}
...
{% endfor %}
#
{% for j in itmes reversed %}
...
{% endfor %}
ifequal/ifnotequal
基本的な使い方
#
{% ifequal user currentuser %}
...
{% endifequal %}
#
{% ifequal user currentuser %}
...
{% else %}
...
{% endifequal %}
コメント
コメントが必要な場合は、
{# #}
を使用します.変数の表示
変数を表示する必要がある場合は、
{{ }}
辞書または配列の下付き要素を表示する必要がある場合は、{{ kwargs.key1 }}
/{{ args.0 }}
を使用します..
メソッドは、両方の場合に加えて、時間オブジェクトdate
を取得する月、例えば{{ date.month }}
などの関数オブジェクトまたはオブジェクトの属性を使用することもできます.フィルタ
テンプレートフィルタは、変数が表示される前に変更できます.フィルタは、パイプ文字、例えば、次の
lower
を使用します.#
{{ name|lower }}
フィルタパイプは、1つのフィルタパイプの出力が次のパイプの入力として使用されてもよい.例えば、次のようにしてもよい.
# ,
{{ name|first|upper }}
フィルタはパラメータを持つことができ、パラメータはコロンに従った後、常に二重引用符で囲まれています.たとえば、次のようになります.
# 30
{{ name|truncatewords:"30" }}
include
include
を使用すると、テンプレートに他のテンプレートの内容を含めることができます.たとえば、次のような{%include"other_template.html"%}テンプレート継承
テンプレートは、継承によって多重化することができ、例えば、次のような
base.html
をhello.html
によって継承し、特定のblock
を置き換えることができる.# base.html
js test
Hello js
{% block mainbody %}
base.html
{% endblock %}
# hello.html
{% extends "base.html" %}
{% block mainbody %}
hello.html base.html
{% endblock %}
# base.html
Hello js
base.html
# hello.html
Hello js
hello.html base.html