選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Django 新增主模板


extends 標籤

在之前的頁面中,我們建立了兩個模板:一個用於列出所有成員,另一個用於顯示成員的詳細資訊。

這兩個模板包含了一組相同的 HTML 程式碼。

Django 提供了一種建立“父模板”的方法,您可以將其包含在所有頁面中,以處理所有頁面中相同的元素。

首先建立一個名為 master.html 的模板,其中包含所有必需的 HTML 元素。

主模板

my_tennis_club/members/templates/master.html:

<!DOCTYPE html>
<html>
<head>
  <title>{% block title %}{% endblock %}</title>
</head>
<body>

{% block content %}
{% endblock %}

</body>
</html>

您是否在 <title> 元素和 <body> 元素中看到了 Django 的 block 標籤?

它們是佔位符,告訴 Django 將這個塊替換為來自其他來源的內容。


修改模板

現在,這兩個模板(all_members.htmldetails.html)可以使用 master.html 模板了。

這透過使用 {% extends %} 標籤包含主模板,並插入 title 塊和 content 塊來完成。

Members

my_tennis_club/members/templates/all_members.html:

{% extends "master.html" %}

{% block title %}
  My Tennis Club - List of all members
{% endblock %}


{% block content %}
  <h1>Members</h1>
  
  <ul>
    {% for x in mymembers %}
      <li><a href="details/{{ x.id }}">{{ x.firstname }} {{ x.lastname }}</a></li>
    {% endfor %}
  </ul>
{% endblock %}
執行示例 »

詳情

my_tennis_club/members/templates/details.html:

{% extends "master.html" %}

{% block title %}
  Details about {{ mymember.firstname }} {{ mymember.lastname }}
{% endblock %}


{% block content %}
  <h1>{{ mymember.firstname }} {{ mymember.lastname }}</h1>
  
  <p>Phone {{ mymember.phone }}</p>
  <p>Member since: {{ mymember.joined_date }}</p>
  
  <p>Back to <a href="/members">Members</a></p>
  
{% endblock %}
執行示例 »

如果您已經在自己的計算機上完成了所有步驟,您可以在自己的瀏覽器中看到結果: 127.0.0.1:8000/members/

如果伺服器已停止,您需要使用 runserver 命令重新啟動它。

py manage.py runserver

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援