zqxt
├── tutorial
│ ├── __init__.py
│ ├── admin.py
│ ├── models.py
│ ├── templates
│ │ └── tutorial
│ │ ├── index.html
│ │ └── search.html
│ ├── tests.py
│ └── views.py
├── tryit
│ ├── __init__.py
│ ├── admin.py
│ ├── models.py
│ ├── templates
│ │ └── tryit
│ │ ├── index.html
│ │ └── poll.html
│ ├── tests.py
│ └── views.py
├── manage.py
└── zqxt
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
如果需要將乙個或多個變數共享給多個網頁或者所有網頁使用,這個可以使用django 上下文渲染器來做。
**簡單總結一下:**一般的變數之類的用 }(變數),功能類的,比如迴圈,條件判斷是用 (標籤)
(1)顯示乙個基本的字串在網頁上
views.py
from django.shortcuts import render
defhome
(request)
: s = u"我在自強學堂學習django,用它來建**"
return render(request,
'home.html'
,)
home.html
}
(2)基本的 for 迴圈
views.py
from django.shortcuts import render
defhome
(request)
: tutoriallist =
["html"
,"css"
,"jquery"
,"python"
,"django"
]return render(request,
'home.html'
,)
home.html
}
(3)顯示字典中的內容
views.py
def
home
(request)
: info_dict =
return render(request,
'home.html'
,)
home.html
}: }
(4)條件判斷
forloop.last判斷是否是最後乙個元素
},
for迴圈中其他的方法:
變數描述
forloop.counter
索引從 1 開始算
forloop.counter0
索引從 0 開始算
forloop.revcounter
索引從最大長度到 1
forloop.revcounter0
索引從最大長度到 0
forloop.first
當遍歷的元素為第一項時為真
forloop.last
當遍歷的元素為最後一項時為真
forloop.parentloop
用在巢狀的 for 迴圈中,獲取上一層 for 迴圈的 forloop
當列表中可能為空值時用
>
>
}li>
>
抱歉,列表為空li
>
ul>
(5)模板上得到檢視對應的**
還可以使用 as 語句將內容取別名(相當於定義乙個變數),多次使用(但檢視名稱到**轉換只進行了一次)
href
="}"
>
鏈結到:}a
>
(6)邏輯操作
==, !=, >=, <=, >, < 這些比較都可以在模板中使用
成績優秀,自強學堂你沒少去吧!學得不錯
成績良好
成績一般
需要努力
不及格啊,大哥!多去自強學堂學習啊!
(7)獲取當前使用者}
如果登陸就顯示內容,不登陸就不顯示內容:
},您好!
請登陸,這裡放登陸鏈結
(8)獲取當前**}
(9)獲取當前get引數}
合併到一起用
href
="}?}&delete=1"
>
當前**加引數 deletea
>
完整的內容參考官方文件: django模板標籤
載入乙個模板,並根據上下文渲染它。用於在乙個模板中包含其他模板。標記當前模板擴充套件乙個父模板。這個標籤有兩種用法 1.直接使用要擴充套件的父模板的名字 html 2.用變數variable的值來指定父模板,如果變數是乙個字串,django會把字串的值當做父模板的檔名,如果變數是乙個template...
Django模板之模板標籤
標籤比變數更加複雜 一些在輸出中建立文字,一些通過迴圈或邏輯來控制流程,一些載入其後的變數將使用到的額外資訊到模版中。一些標籤需要開始和結束標籤 例如 標籤 內容.有些標籤不需要結束 快捷鍵 輸入tag直接回車 for標籤 迴圈遍歷可迭代變數中的每乙個元素,沒有break和continue等複雜功能...
Django (三)模板標籤
執行操作1 執行操作2 執行操作3 這是第乙個值 forloop.count0 forloop.count forloop.revcounter forloop.revcounter0 forloop.first 返回bool forloop.last forloop.parentloop 如果發生...