如何在 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 應用程式的強大工具。