選單
×
   ❮   
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 模板變數


模板變數

在 Django 模板中,你可以透過將變數放在 {{ }} 括號內來渲染它們。

示例

templates/template.html:

<h1>Hello {{ firstname }}, how are you?</h1>
執行示例 »

在檢視中建立變數

上面的例子中的變數 firstname 是透過檢視傳送到模板的。

views.py:

from django.http import HttpResponse
from django.template import loader

def testing(request):
  template = loader.get_template('template.html')
  context = {
    'firstname': 'Linus',
  }
  return HttpResponse(template.render(context, request))
執行示例 »

正如你在上面的檢視中看到的,我們建立了一個名為 context 的物件,並用資料填充它,然後將其作為第一個引數傳送到 template.render() 函式中。


在模板中建立變數

你也可以直接在模板中使用 {% with %} 模板標籤來建立變數。

變數在 {% endwith %} 標籤出現之前都是可用的。

示例

templates/template.html:

{% with firstname="Tobias" %}
<h1>Hello {{ firstname }}, how are you?</h1>
{% endwith %}
執行示例 »

你將在下一章中學習更多關於 模板標籤 的知識。


來自模型的資料

上面的例子展示了一種在模板中建立和使用變數的簡單方法。

通常,你想在模板中使用的大部分外部資料都來自模型。

我們在前面的章節中建立了一個名為 Member 的模型,我們將在本教程的後續章節的許多示例中使用它。

要從 Member 模型獲取資料,我們必須在 views.py 檔案中匯入它,並在檢視中提取資料。

members/views.py:

from django.http import HttpResponse, HttpResponseRedirect
from django.template import loader
from .models import Member

def testing(request):
  mymembers = Member.objects.all().values()
  template = loader.get_template('template.html')
  context = {
    'mymembers': mymembers,
  }
  return HttpResponse(template.render(context, request))

現在我們可以在模板中使用這些資料了。

templates/template.html:

<ul>
  {% for x in mymembers %}
    <li>{{ x.firstname }}</li>
  {% endfor %}
</ul>
執行示例 »

我們使用 Django 模板標籤 {% for %} 來遍歷 members。

你將在下一章中學習更多關於 模板標籤 的知識。

×

聯絡銷售

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

報告錯誤

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

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

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