Django模板引擎是Django框架的一個核心組件,用于渲染HTML模板。它使用Django模板語言(DTL)來編寫模板文件,支持動態數據、邏輯控制和模板繼承等功能。在Django模板中,除了常規的HTML標記和屬性外,還有一些特殊的模板標簽和過濾器,用于實現動態數據綁定和邏輯控制。
(資料圖片僅供參考)
if標簽用于在模板中進行條件判斷,語法如下:
{% if condition %} {% else %} {% endif %}
示例代碼:
{% if user.is_authenticated %} Welcome {{ user.username }}!
{% else %} Please log in.
{% endif %}
在這個示例中,我們使用if標簽來檢查用戶是否已經登錄。如果用戶已經登錄,則在頁面中顯示歡迎消息,否則顯示一個提示讓用戶登錄。
for標簽用于在模板中進行循環迭代,語法如下:
{% for item in items %} {% empty %} {% endfor %}
示例代碼:
{% for product in products %} {{ product.name }} - ${{ product.price }}
{% empty %} No products available.
{% endfor %}
在這個示例中,我們使用for標簽遍歷products列表,并在HTML頁面中顯示每個產品的名稱和價格。如果products列表為空,則顯示一條消息提示沒有產品可用。
block標簽用于在模板中定義一個塊,以便在模板繼承中進行覆蓋。它通常與extends標簽一起使用。語法如下:
{% block block_name %} {% endblock %}
示例代碼:
{% extends "base.html" %}{% block content %} Welcome to my website
This is the home page
{% endblock %}
在這個示例中,我們在base.html模板中定義了一個名為content的塊。然后,我們在home.html模板中使用extends標簽擴展base.html,并覆蓋content塊的內容,以在頁面中顯示自定義的內容。
[責任編輯:linlin]
標簽: