django常用模板和模板變數整理
阿新 • • 發佈:2018-12-17
配置html檔案所在位置
setting.py
#修改前
'DIRS': []
#修改後
'DIRS': [os.path.join(BASE_DIR, 'templates')]
django配置靜態檔案(css,js等):
settings.py
##引入static檔案所在資料夾
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
或者
STATICFILES_DIRS = os.path.join(BASE_DIR, 'static')
前端引入:
在頁面頂部: {% load staticfiles %} #引入CSS、JS {% static 'xxx.css' %} {% static 'xxx.js' %}
接受一個dict
變數,列表,字典
直接使用變數
{{ var }}
模板內建標籤:
{% for list in list %}
<li>{{ list }}</li>
{% endfor %}
{% for key,values in mydict.items %}
<li>{{ key }}:{{ values }}</li>
{% endfor %}
模板包含,能將可以重用的html程式碼獨立出來(和C裡面的include xxx功能相同):
templates/index.html {% include 'head.html' %} <div>變化的主題內容</div> {% include 'footer.html' %}
模板繼承:在繼承父模板的基礎上進行拓展
templates/base.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>MyBlog</title> </head> <body> <div>頭部</div> {% block content %} ###這個的content可以自由命名。只要上下對應 {% endblock %} <div>尾部</div> </div> </body> </html>
templates/index.html
{% extends "base.html" %} ###放在第一行
{% block content %}
<div>中部</div> ##將中間內容插入到base.html對應的塊中
{% endblock %}