1. 程式人生 > >Django 基礎二

Django 基礎二

shortcuts 賬號密碼 share template 子類 rap 內容 分享 containe

一 模版

一模版的組成

HTML代碼+邏輯控制代碼

二 邏輯控制代碼的組成

1 變量(使用雙大括號來引用變量)

{{var_name}}

2 標簽(tag)的使用(使用大括號和百分比的組合來表示使用tag)

{%load staticfiles%}

3 過濾器(filter)的使用

{{ship_date|date:"Fj,Y"}},ship_date變量傳給data過濾器,date過濾器通過使用"FJ,Y"這幾個參數來格式化日期數據。"|"代表類似Unix命令中的管道操作。

三 常用標簽

1 {%if%} 的使用

可以使用你的and,or,not來組織的邏輯。但不允許and和or同時出現在條件語句中。新版本中已經支持了 {%elif%} 這樣的用法。

2 {% for %}的使用

用來循環一個序列, 還可以使用reserser關鍵字來進行倒序遍歷,一般可以先用if語句判斷序列是否為空,再進行遍歷;還可以使用empty關鍵字來進行為空時的跳轉

技術分享圖片

3 {%csrf_token%}

用於生成csrf_token的標簽,用於防治跨站攻擊驗證。

註意如果你在view的index裏用的是render_to_response方法,此時標簽由於沒有上下文的關系所以沒有效果,需要:

技術分享圖片

或者直接使用render。

其實,這裏是會生成一個input標簽,和其他表單標簽一起提交給後臺的。

4 {% load %}: 加載標簽庫

5 {% url %}: 引用路由配置的地址

技術分享圖片

6 {% with %}:用更簡單的變量名替代復雜的變量名

技術分享圖片

7 {% verbatim %}: 禁止render

{% verbatim %}
{{ hello }}
{% endverbatim %}

四 常用過濾器

1 add : 給變量加上相應的值

2 addslashes: 給變量中的引號前加上斜線

3 capfirst : 首字母大寫

4 cut : 從字符串中移除指定的字符

5 date : 格式化日期字符串

6 default : 如果值是False,就替換成設置的默認值,否則就是用本來的值

7 default_if_none:如果值是None,就替換成設置的默認值,否則就使用本來的值

技術分享圖片技術分享圖片

五 模版的包含和繼承

包含:{% include %} 允許在模版中包含其他模版的內容。