如何在 Django 專案中新增站點標題、網站標題和索引標題?


為了方便使用者瀏覽並理解網站的目的,在構建 Django 專案時,擁有清晰簡潔的網站標題、網站標題和索引標題至關重要。為了將它們新增到網站中,您需要在 Django 應用程式的 HTML 模板中指定網站標題、網站標題和索引標題。每個網頁都將包含這些元素,使訪問者更容易瀏覽並理解您專案的目的。對於使用者可能難以瀏覽的複雜、大型網站,這些補充尤其有用。在本教程中,我們將介紹如何使用 Python 程式碼將這些元件新增到您的 Django 專案中。

演算法

要使用 Jinja 2 塊將索引、站點標題和頁面標題新增到您的 Django 專案中,請按照以下步驟操作:

  • 為您的專案建立一個基本 HTML 模板。此模板應包含索引、站點標題和頁面標題所需的 Jinja 2 塊。

  • 在基本模板中,使用{% block %}語法定義索引、站點標題和頁面標題的Jinja 2塊。

  • 在 Django 應用程式的每個檢視中,擴充套件基本模板並使用{% extends %}{% block %}語法為相應的 Jinja 2 塊提供內容。

  • 使用{% include %}{% extends %}語法在 Django 應用程式中呈現擴充套件的模板。

base.html

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>{% block title %}{% endblock %}</title>
</head>
<body>
   <header>
      <h1>{% block header %}{% endblock %}</h1>
   </header>
   <main>
   {% block content %}{% endblock %}
   </main>
</body>
</html>

index.html

# In your index template (index.html)

{% extends "base.html" %}

{% block title %}Index Title{% endblock %}

{% block header %}Site Header{% endblock %}

{% block content %}
   <h2>Index Title</h2>
   <p>Make up some text to place here : : : </p>
{% endblock %}
  • 在 Django 中,塊頭和塊標題是模板系統的一部分,允許您建立具有動態內容的可重用模板。所有這些都屬於 Jinja2 模板,它本身就在 HTML 中進行插值。

  • {% block title %}{% endblock %}允許在 HTML 檔案的頭部部分定義一個網頁標題的塊,但請注意,它預設情況下是空的,因此您需要在子模板中覆蓋它,以便動態設定網站每個頁面的標題。例如,如果您有一個包含多篇文章的部落格,則可以使用塊標題動態設定每篇文章頁面的標題。

  • {% block header %}{% endblock %}有助於在 HTML 檔案的正文部分定義一個網頁頭部部分的塊。與上面的塊類似,它預設情況下也是空的,並且應該在子模板中被覆蓋,允許您動態設定網站每個頁面的頭部內容。

  • 要使用這些塊,請建立一個包含網站基本結構的基本模板,包括頭部和正文部分。然後,建立從基本模板繼承的子模板,並覆蓋{% block title %}{% endblock %}和{% block header %}{% endblock %}塊以設定每個頁面的特定內容。

結論

總之,使用 Jinja 2 將索引、站點標題和頁面標題塊新增到您的 Django 專案中可以顯著改善應用程式的整體外觀和功能。透過建立一個包含基本塊的基本 HTML 模板並在每個檢視中使用相關資訊擴充套件它,您可以輕鬆地保持整個專案的統一性,同時仍然允許在各個頁面中靈活更改。語法“block%”、“extends%”和“include%”提供了一種簡單有效的方法來實現此目的。總的來說,Jinja 2 塊是使用 Django 構建動態且美觀的 Web 應用程式的強大工具。

更新於:2023年8月21日

566 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告