<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
方式一:
# urls.py path('template', views.template)
# views.py def template(request): name = "jasper" age = "18" return render(request, 'template.html', {"name": name, "age": age})
<p>姓名:{{ name }} 年齡:{{ age }}</p>
方式二:關鍵字locals
def template(request): name = "jasper" age = "18" return render(request, 'template.html', locals())
傳值範圍:
add
{{ value|add:"2" }}
如果 value 是 4,那麼輸出將是 6。
這個過濾器將首先嚐試將兩個值強制轉為整數。如果失敗了,它將嘗試將兩個值加在一起。這對某些資料型別(字串、列表等)有效,而對其他型別則失敗。如果失敗,結果將是一個空字串。
capfirst
{{ value|capfirst }}
將值的第一個字元大寫。如果第一個字元不是字母,這個過濾器就沒有效果。
如果 value 是 “django”,則輸出為 “Django”。
center
在給定寬度的欄位中使數值居中。
"{{ value|center:"15" }}"
如果 value 是 “Django”,輸出將是 " Django "。
cut
從給定的字串中刪除引數的所有值。
{{ value|cut:" " }}
如果 value 是 “String with spaces”,輸出將是 “Stringwithspaces”。
date
根據給定的格式設定日期。
例子:
{{ value|date:"D d M Y" }}
如果 value 是一個 datetime 物件(例如,datetime.datetime.datetime.now() 的結果),輸出將是字串 ‘Wed 09 Jan 2008’。
傳遞的格式可以是預定義的 DATE_FORMAT、DATETIME_FORMAT、SHORT_DATE_FORMAT 或 SHORT_DATETIME_FORMAT, 或者是使用上表中顯示的格式指定器的自定義格式。請注意,預定義的格式可能會根據當前的 locale 而有所不同。
假設 USE_L10N 為 True 和 LANGUAGE_CODE 為例如 “es”,那麼對於:
{{ value|date:"SHORT_DATE_FORMAT" }}
輸出將是字串 “09/01/2008” (Django 自帶的 “SHORT_DATE_FORMAT” 格式指定符是 “d/m/Y”)。
當不使用格式字串時,使用 DATE_FORMAT 格式指定器。假設設定與前一個例子相同:
{{ value|date }}
輸出 9 de Enero de 2008 (DATE_FORMAT’ 格式指定符為 r’jde Fde Y’)。“d” 和 “e” 都是反斜槓,因為否則每一個都是一個格式字串,分別顯示日期和時區名稱。
你可以將 date 與 time 過濾器結合起來,以呈現一個 datetime 值的完整表示。例如:
{{ value|date:"D d M Y" }} {{ value|time:"H:i" }}
default
如果值為 False,則使用給定的預設值。否則,使用該值。 例子:
{{ value|default:"nothing" }}
如果 value 是 “” (空字串),輸出將是 nothing。
更多內建過濾器請檢視官方檔案:https://docs.djangoproject.com/zh-hans/4.1/ref/templates/builtins/
參考官方檔案:https://docs.djangoproject.com/zh-hans/4.1/ref/templates/builtins/
Django 模板語言套件含了很多 內建 tags 和 filters,設計目的是滿足應用需要佔位邏輯需求。極少情況下,你可能發現需要的功能未被核心模板集覆蓋。你能通過 Python 程式碼自定義 tags 和 filters 擴充套件整合模板引擎,通過 {% load %} 標籤使其可用。
該應用應包含一個 templatetags 目錄,與 models.py, views.py 等同級。若該目錄不存在,建立它——不要忘了用 init.py 檔案確保目錄被視作一個 Python 包。
自定義的 tags 和 filters 會儲存在模組名為 templatetags 的目錄內。模組檔案的名字即稍候你用來載入 tags 的名字,所以小心不要採用一個可能與其它應用自定義的 tags 和 filters 衝突的名字。
為了使 {% load %} 標籤生效,包含自定義標籤的應用必須包含在 INSTALLED_APPS 中。這是個安全特性:它允許你在一個主機上持有多個模板庫,而不是讓每個 Django 安裝都能存取所有的庫。
我們並未限制放入 templatetags 包中的模組數量。只需牢記 {% load %} 語句會載入名字指定 Python 模組的 tags/filters,而不是應用。
要成為一個可用的 tag 庫,模組必須包含一個名為 register 的模組級變數,它是一個 template.Library 範例。所有的 tags 和 filters 均在其中註冊。所以,在模組的開始,輸入以下內容:
from django import template register = template.Library()
@register.filter(name='myfilter') def my_add(a, b): return a + b
@register.simple_tag(name='mt') def func(a, b, c, d): return a + b + c + d
@register.inclusion_tag(filename='it.html') def index(n): html = [] for i in range(n): html.append('第%s頁'%i) return locals()
參考官方檔案:https://docs.djangoproject.com/zh-hans/4.1/howto/custom-template-tags/
# 在html頁面打上標記
{% block 名字 %}
html標籤
{% endblock %}# 擴充套件html介面
{% extends 'html檔案' %}{% block 名字 %}
html標籤
{% endblock %}# 一般情況下模板中至少應該有三個區域
css、js、content
子板中還可以使用母板的內容 {{ block.super }}
將html頁面的某個部分當做模組的形式匯入使用
{% include 'menu.html' %}
到此這篇關於Python模板的使用詳細講解的文章就介紹到這了,更多相關Python模板內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45