Djangoでのtemplatesの使用
4791 ワード
1、templatesテンプレートファイルを配置する
2、テンプレート構文
1、変数
2.文法
3、forサイクル
1、形式1:
2、フォーマット2:
3、forloopサイクルのカウンタ
4、判断文
1、形式1:
2、フォーマット2:
3、書式3
4、フォーマット4:二つの値が等しいかどうかを判断する
5、フォーマット5:二つの値が等しいかどうかを判断する
5、比較演算子
6、注釈:
7、その他
1、加算/減算
2、乗算/除算演算
3、ある数を割り切るかどうか
4、大文字と小文字の変換
5、文字列のつづり
8、エスケープ文字
ラベルを有効にする
9、テンプレートの継承
1、継承方法
2、block
1、親に穴を掘る
2、サブクラスに穴を埋める
3、ピットは親テンプレートの内容を保持する
に注意
3、思想
1、ゼロにする
2、ゼロにする
10、テンプレートの簡単なロード原理
1、templates , , , templates
2、 :
1、 , html , views ,
2、 , , views
3、 templates ,
:1、 setting TEMPLATES
:'DIRS':[os.path.join(BASE_DIR,'templates')],
2、 templates ,
:templates --mark Directory as---template Folder
4、 template ,
2、テンプレート構文
1、変数
1、 views , ,
2、 :{{ }} {}
3、 : , ,
2.文法
1、.
: .
2、.
: . ()
3、 . (list,tuple...) , ,
: . python : [ ]
4、 . , key
: .key python : [key]
3、forサイクル
: {% endif %}
1、形式1:
{% for in %}
{% endfor %}
2、フォーマット2:
{% for in %}
{% empty %}
,
{% endfor %}
3、forloopサイクルのカウンタ
forloop.first
forloop.last
forloop.counter 1
forloop.counter0 0
forloop.revcounter 1 , ,
forloop.revcounter0 0 , ,
4、判断文
1、形式1:
{% if %}
{% endif %}
2、フォーマット2:
{% if %}
{% else %}
2
{% endif %}
3、書式3
{% if 1 %}
1 1
{% elif 2 %}
2 2
{% else %}
3
{% endif %}
4、フォーマット4:二つの値が等しいかどうかを判断する
{% ifequal value1 value2 %}
value1 value2
{% endifequal %}
: value1 value2 ,
5、フォーマット5:二つの値が等しいかどうかを判断する
{% ifnotequal value1 value2 %}
value value2
{% endifnotequal %}
5、比較演算子
>
<
>=
<=
== ( )
!=
** , {% %}
6、注釈:
{# :ctrl + / #}
{% comment %}
:ctrl+shift+/
{% endcomment %}
,
7、その他
1、加算/減算
: {{ value|add: }} value
: {{ value|add: }} value -
2、乗算/除算演算
:{% widthratio value %}
value * /
{% widthratio value 1 %}
{% widthratio value 1 %}
3、ある数を割り切るかどうか
:{{ value|divisbleby: }} value
:
{% for student in allStudent %}
{% if forloop.counter0|divisibleby:2 %}
{{ student.s_name }}
{% else %}
{{ student.s_name }}
{% endif %}
{% endfor %}
4、大文字と小文字の変換
:{{ value|lower }}
:{{ value|upper }}
5、文字列のつづり
:{{ |join:' '}}
8、エスケープ文字
: , views html , html , html
ラベルを有効にする
autoescape
HTML
{% autoescape on %}
{{ strHtml }}
{% endautoescape %}
HTML
{% autoescape off %}
{{ strHtml }}
{% endautoescape %}
9、テンプレートの継承
, css/html/js
1、継承方法
1、 base.html,
2、 index.html, {% extends 'base.heml'%}, css/html/js
2、block
block , ,
1、親に穴を掘る
:
{% block %}
{% ednblock%}
2、サブクラスに穴を埋める
{% block %}
{% endblock %}
3、ピットは親テンプレートの内容を保持する
{{ block.super }}
:{% block head %}
{{ block.super }}
{% ednblock %}
に注意
,
3、思想
1、ゼロにする
html block ,
2、ゼロにする
html include html , html
html html
{% include 'head.html' %}
{% include 'banner.html' %}
{% include 'foot.html' %}
10、テンプレートの簡単なロード原理
def loadTem(request):
1、 views
template = loader.get_template('loadTem.html')
2、 , html
htmlData = template.render(context = {'content':' '})
3、 , html
return HttpResponse(htmlData)