欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python Django模板之模板過濾器與自定義模板過濾器示例

 更新時間:2019年10月18日 11:01:31   作者:houyanhua1  
這篇文章主要介紹了Python Django模板之模板過濾器與自定義模板過濾器,結(jié)合實例形式分析了Django框架模板過濾器與自定義模板過濾器相關(guān)功能、原理、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下

本文實例講述了Python Django模板之模板過濾器與自定義模板過濾器。分享給大家供大家參考,具體如下:

模板過濾器

過濾器用于對模板變量進行操作。

date:改變?nèi)掌诘娘@示格式。

length:求長度。字符串,列表。

default:設(shè)置模板變量的默認值。

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

自定義過濾器。

自定義的過濾器函數(shù),至少有一個參數(shù),最多兩個

例如:

{{ book.btitle|length }} # 返回字符串或列表的長度

{{ book.bpub_date|date:'Y年-m月-d日' }} # 格式化日期格式

{{ content|default:'hello' }} # 為不存在的變量指定默認值。

自定義模板過濾器

應(yīng)用名/templatetags/filters.py(自定義過濾器函數(shù),templatetags文件名固定):

# 自定義過濾器
# 過濾器其實就是python函數(shù)
from django.template import Library
# 創(chuàng)建一個Library類的對象
register = Library()
# 自定義的過濾器函數(shù),至少有一個參數(shù),最多兩個。(第一個參數(shù)就是要過濾的模板變量)
@register.filter
def mod(num):
  '''判斷num是否為偶數(shù)'''
  return num%2 == 0
@register.filter
def mod_val(num, val):
  '''判斷num是否能被val整除'''
  return num%val == 0

demo.html(模板文件,使用自定義過濾器):

<!DOCTYPE html>
<html lang="en">
{% load filters %} {# load標簽加載自定義過濾器的py文件。和templatetags/filters.py 的py文件名一致。 #}
<head>
  <meta charset="UTF-8">
  <title>模板過濾器</title>
</head>
<body>
<ul>
  {# {% if book.id|mod %}#}  {# 使用自定義的過濾器。需要先load自定義過濾器的py文件 #}
  {% if book.id|mod_val:3 %}  {# 使用自定義的過濾器 #}
    。。。
  {% else %}
    。。。
  {% endif %}
</ul>
</body>
</html>

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

相關(guān)文章

最新評論