1.模板的配置:
1.需要在polls這個APP中創(chuàng)立templates
默認配置下,Django 的模板系統(tǒng)會自動找到app下面的templates文件夾中的模板文件
polls文件夾:
|-- admin.py
|-- apps.py
|-- __init__.py
|-- migrations/
| |-- 0001_initial.py
| |-- __init__.py
|-- models.py
|-- templates/
| `-- home.html
|-- tests.py
`-- views.py
Django模板中的問題:
Django 查找模板的過程是在每個 app 的 templates 文件夾中找(而不只是當前 app 中的代碼只在當前的 app 的 templates 文件夾中找)。各個 app 的 templates 形成一個文件夾列表,Django 遍歷這個列表,一個個文件夾進行查找,當在某一個文件夾找到的時候就停止,所有的都遍歷完了還找不到指定的模板的時候就是 Template Not Found (過程類似于Python找包)。這樣設(shè)計有利當然也有弊,有利是的地方是一個app可以用另一個app的模板文件,弊是有可能會找錯了。所以我們使用的時候在 templates 中建立一個 app 同名的文件夾,這樣就好了。
這就需要把每個app中的 templates 文件夾中再建一個 app 的名稱,僅和該app相關(guān)的模板放在 app/templates/app/ 目錄下面,所以正確的做法應(yīng)該是:
polls文件夾:
|-- templates/
| `-- polls/
| `-- home.html
2. Django模板中的循環(huán),條件判斷,常用的標簽,過濾器的使用:
- 實例一,顯示一個基本的字符串在網(wǎng)頁上:
# -*- coding: utf-8 -*-
from django.shortcuts import render
def home(request):
string = u"我在自學Django,用它來建網(wǎng)站"
return render(request, 'home.html', {'string': string})