Django學習【第3篇】:Django之模板語法
阿新 • • 發佈:2018-12-21
開始 切片 byte 當前 tag targe you 過濾 per
Django框架之第三篇模板語法(重要!!!)
一、什麽是模板?
只要是在html裏面有模板語法就不是html文件了,這樣的文件就叫做模板。
二、模板語法分類
一、模板語法之變量:語法為 {{ }}:
在 Django 模板中遍歷復雜數據結構的關鍵是句點字符 .(也就是點)
views.py
def index(request):
name = "hello haiyan"
i = 200
l = [11,22,33,44,55]
d = {"name":"haiyan","age":20}
class People(object): #繼承元類
def __init__(self,name,age):
self.name = name
self.age = age
def __str__(self):
return self.name+str(self.age)
def dream(self):
return "你有夢想嗎?"
#實例化
person_egon = People("egon",10)
person_dada = People("dada",34)
person_susan = People("susan",34)
person_list = [person_dada,person_egon,person_susan]
return render(request,"index.html",
{
"name":name,
"i":i,
"l":l,
"d":d, #鍵對應的是模板裏的名字。值對應的是上面定義的變量
"person_egon":person_egon,
"person_dada":person_dada,
"person_list":person_list,
}
)
# return render(request,"index.html",locals())
#用locals()可以不用寫上面的render了。不過用locals(),views裏面用什麽名。模板裏面就得用什麽名
# locals()局部的:用了locals就相當於都得按照上面的那樣
template/index.html
<h4>變量{{ z }}:深度查詢</h4><hr> <h3>{{ name }}</h3> <p>{{ i }}</p> <p>{{ l }}</p> <p>{{ d }}</p> <p>{{ l.0 }}------》取單個值可通過句點符(也就是點)</p> <p>{{ l.4 }}</p> <p>{{ d.name }}</p> <p>{{ d.age }}-----》字典也可以根據句點符取值,一個點就搞定了。 然而在前端頁面中是看不到你的模板語法的,當你點擊審查元素的 時候,你就會發現,偷偷的換過來了</p> <p>{{ person_dada.name }}</p> <p>{{ person_egon.age }}</p> <p>{{ person_dada.dream }}</p> <!-- .方法的時候,註意當前的dream方法是沒有參數的--> <p>{{ person_list.2 }}</p> <!--單個取值--> <p>{{ person_list.1.name }}</p> <!-- 那怎麽讓對象變成字符串呢?在index視圖函數裏裏面再加上一個__str__內置方法--> <!--__str__是對象字符串的改變-->
註意:句點符也可以用來引用對象的方法(無參數方法)。
<h4>字典:{{ dic.name.upper }}<
/
h4>
二、模板語法之標簽:語法為 {% tag %}: