最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django框架模板語(yǔ)言實(shí)例小結(jié)【變量,標(biāo)簽,過(guò)濾器,繼承,html轉(zhuǎn)義】

 更新時(shí)間:2019年05月23日 11:30:46   作者:SpecYue  
這篇文章主要介紹了Django框架模板語(yǔ)言,結(jié)合實(shí)例形式總結(jié)分析了Django框架中變量,標(biāo)簽,過(guò)濾器,繼承,html轉(zhuǎn)義等相關(guān)模板語(yǔ)言操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Django框架模板語(yǔ)言。分享給大家供大家參考,具體如下:

模板語(yǔ)言

模板語(yǔ)言簡(jiǎn)稱為DTL(Django Template Language)

模板變量

模板變量名由數(shù)字,字母,下劃線和點(diǎn)組成,不能以下劃線開(kāi)頭。
使用:{{模板變量名}}

def index2(request):
  '''模板加載順序'''
  return render(request, 'booktest/index2.html')
# /temp_var
def temp_var(request):
  '''模板變量'''
  my_dict = {'title': '字典鍵值'}
  my_list = [1, 2, 3]
  book = BookInfo.objects.get(id=1)
  #定義模板上下文
  context={'my_dict':my_dict,'my_list':my_list,'book':book}
  return render(request,'booktest/temp_var.html',context)

模板變量可以是字典,列表或者對(duì)象。定義好模板上下文之后,用render()函數(shù)傳遞給html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>模板變量</title>
</head>
<body>
使用字典屬性:{{ my_dict.title }}
使用列表元素:{{ my_list.1 }}
使用對(duì)象屬性:{{ book.btitle }}
</body>
</html>

可以看到模板變量都是通過(guò) . 調(diào)用的。

模板標(biāo)簽

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>模板標(biāo)簽</title>
  <style>
    .red{
      background-color: red;
    }
    .yellow{
      background-color: yellow;
    }
    .green{
      background-color: green;
    }
  </style>
</head>
<body>
<ul>
  {% for book in books %}
    {% if book.id <= 2 %}
    <li class="red">{{ forloop.counter }}--{{ book.btitle }}</li>
    {% elif book.id >= 5 %}
      <li class="yellow">{{ forloop.counter }}--{{ book.btitle }}</li>
    {% else %}
      <li class="green">{{ forloop.counter }}--{{ book.btitle }}</li>
    {% endif %}
  {% endfor %}
</ul>
</body>
</html>

具體的其他的模板標(biāo)簽可以參考Django官方文檔。

過(guò)濾器

過(guò)濾器用于對(duì)模板變量進(jìn)行操作

date:改變?nèi)掌诘娘@示格式
length:求長(zhǎng)度,字符串,列表,元祖,字典
default:設(shè)置模板變量的默認(rèn)值

格式:模板變量 | 過(guò)濾器:參數(shù)

date過(guò)濾器

<li class="red">{{ book.btitle }}--{book.bpub_date | date:'Y年-m月-d日'}</li>

default過(guò)濾器 {{dd | default:'無(wú)'}}

模板注釋

單行注釋:{# 注釋 #}

多行注釋:{% comment %}

模板繼承

不同頁(yè)面可能有相同的模塊,這時(shí)候可以使用模板繼承減少代碼量

base.html內(nèi)容

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>父模板</title>
</head>
<body>
<h1>導(dǎo)航條</h1>
{% block b1 %}
  <h1>這是父模板b1塊中的內(nèi)容</h1>
{% endblock b1 %}
<h1>版權(quán)信息</h1>
</body>
</html>

child.html內(nèi)容

{% extends 'booktest/base.html' %}
{% block b1 %}
  {{ block.super }}
  <h1>這是子模板b1的內(nèi)容</h1>
{% endblock b1 %}

在父模板中{% block b1 %} <h1>這是父模板b1塊中的內(nèi)容</h1> {% endblock b1 %}
定義一個(gè)預(yù)留快,預(yù)留塊中可以有內(nèi)容。子模板繼承時(shí),{% extends 'booktest/base.html' %}導(dǎo)入,{% block b1 %} {{ block.super }} <h1>這是子模板b1的內(nèi)容</h1> {% endblock b1 %}寫(xiě)預(yù)留塊,{{ block.super }}繼承預(yù)留快的內(nèi)容。

html轉(zhuǎn)義

通過(guò)render()函數(shù)傳遞過(guò)來(lái)的模板上下文默認(rèn)是轉(zhuǎn)義的,也就是說(shuō)我們想傳遞html語(yǔ)言的時(shí)候,實(shí)際上傳遞過(guò)來(lái)的是字符串,這個(gè)時(shí)候我們可以通過(guò)過(guò)濾器關(guān)閉轉(zhuǎn)義

{{context | safe}}

希望本文所述對(duì)大家基于Django框架的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python3 SSH遠(yuǎn)程連接服務(wù)器的方法示例

    Python3 SSH遠(yuǎn)程連接服務(wù)器的方法示例

    這篇文章主要介紹了Python3 SSH遠(yuǎn)程連接服務(wù)器的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Pandas提取數(shù)據(jù)的三種方式

    Pandas提取數(shù)據(jù)的三種方式

    本文主要介紹了Pandas提取數(shù)據(jù)的三種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 機(jī)器學(xué)習(xí)10大經(jīng)典算法詳解

    機(jī)器學(xué)習(xí)10大經(jīng)典算法詳解

    這篇文章主要為大家詳細(xì)介紹了機(jī)器學(xué)習(xí)10大經(jīng)典算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Python爬蟲(chóng)動(dòng)態(tài)IP代理使用及防止被封的方法

    Python爬蟲(chóng)動(dòng)態(tài)IP代理使用及防止被封的方法

    在進(jìn)行網(wǎng)絡(luò)爬蟲(chóng)時(shí),經(jīng)常會(huì)遇到網(wǎng)站的反爬機(jī)制,其中之一就是通過(guò)IP封禁來(lái)限制爬蟲(chóng)的訪問(wèn),為了規(guī)避這種限制,使用動(dòng)態(tài)IP代理是一種有效的方法,本文將介紹在Python爬蟲(chóng)中如何使用動(dòng)態(tài)IP代理,以及一些防止被封的方法,文中有詳細(xì)的代碼講解,需要的朋友可以參考下
    2023-11-11
  • python爬蟲(chóng) 模擬登錄人人網(wǎng)過(guò)程解析

    python爬蟲(chóng) 模擬登錄人人網(wǎng)過(guò)程解析

    這篇文章主要介紹了python爬蟲(chóng) 模擬登錄人人網(wǎng)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 利用Python編寫(xiě)一個(gè)記憶翻牌游戲

    利用Python編寫(xiě)一個(gè)記憶翻牌游戲

    本文帶大家寫(xiě)個(gè)小游戲,不過(guò)老是用pygame也沒(méi)啥意思,這次我們換點(diǎn)新花樣,用python自帶的tkinter包寫(xiě)一個(gè)記憶翻牌小游戲,感興趣的可以了解一下
    2022-03-03
  • flask服務(wù)端響應(yīng)與重定向處理的實(shí)現(xiàn)

    flask服務(wù)端響應(yīng)與重定向處理的實(shí)現(xiàn)

    本文主要介紹了flask服務(wù)端響應(yīng)與重定向處理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • 對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解

    對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解

    今天小編就為大家分享一篇對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Python接口測(cè)試結(jié)果集實(shí)現(xiàn)封裝比較

    Python接口測(cè)試結(jié)果集實(shí)現(xiàn)封裝比較

    這篇文章主要介紹了Python接口測(cè)試結(jié)果集比較封裝,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • python類繼承用法實(shí)例分析

    python類繼承用法實(shí)例分析

    這篇文章主要介紹了python類繼承用法,實(shí)例分析了Python類的定義與類繼承的實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-05-05

最新評(píng)論

元氏县| 铁岭市| 澳门| 青海省| 淳化县| 新平| 麟游县| 南丹县| 山阴县| 沙田区| 平远县| 大城县| 长岛县| 双峰县| 洪洞县| 五大连池市| 正宁县| 潮州市| 巴南区| 海伦市| 南乐县| 织金县| 常宁市| 武平县| 阜平县| 玉树县| 维西| 久治县| 佛冈县| 兴化市| 长治县| 吉木萨尔县| 泸州市| 江津市| 嘉荫县| 水城县| 沂水县| 漾濞| 政和县| 合水县| 马边|