Django第二課:創(chuàng)建第一個(gè)頁面(響應(yīng)),template

一、創(chuàng)建第一個(gè)頁面(響應(yīng))

1.進(jìn)入項(xiàng)目中的views.py文件中添加代碼:

form django import HttpResponse

def index(request):
    return HttpResponse("hello world")

2.在urls.py中配置url

第一種url配置:

  • 第一個(gè)參數(shù)是url本身,是一個(gè)地址(用的是正則表達(dá)式)
  • 第二個(gè)參數(shù)是響應(yīng)函數(shù)
  • url名稱(可以省略)
    url(r'^index/',bv.index),

3.運(yùn)行服務(wù)器

pyhton manage.py runserver

4.進(jìn)入瀏覽器,地址欄中輸入:

http://localhost:8000/index/

就可以看到 計(jì)算機(jī)界十分經(jīng)典的* hello world *的字樣

注意:
每個(gè)響應(yīng)對應(yīng)一個(gè)函數(shù),函數(shù)必須返回一個(gè)響應(yīng)
函數(shù)必須存在一個(gè)參數(shù),一般約定為request

第二種URL配置:

  • from django.conf.urls import url,include
  • 刪除掉import blog.views as bv
  • 修改url函數(shù)的第二個(gè)參數(shù),第一個(gè)參數(shù)也順便修改得合理些:
    url(r'^blog/',include('blog.urls')),
  • 在blog目錄下創(chuàng)建一個(gè)urls.py文件,其中的代碼
from django.conf.urls import url,include
from . import views

urlpatterns = [
     url(r'^$',views.index),
]

ps:改成空字符串是因?yàn)閮蓚€(gè)文件中的路徑一樣,沒有必要
^是用來約束以空開始,$約束以空結(jié)尾

二、創(chuàng)建template

1.templates介紹

是HTML文件,使用了Django模板語言(Django Templates Language ,DTL)
也可以使用第三方模板(如Jinja2)

2.開發(fā)第一個(gè)Template

步驟:

  • 在APP根目錄下創(chuàng)建名叫Templates的目錄
  • 在該目錄下創(chuàng)建HTML文件:index.html
  • 在views.py中修改index函數(shù):
def index(request):
    return render(request,"index.html")

render的第一個(gè)參數(shù)是請求對象本身,第二個(gè)是模板文件,第三個(gè)是后臺(tái)傳遞到前端的數(shù)據(jù)可以省略

3.DTL的初步使用

render函數(shù)中支持一個(gè)dict類型參數(shù),該字典是后臺(tái)傳遞到模板的參數(shù),鍵為參數(shù)名,在模板中使用{{參數(shù)名}}來直接使用

修改后的index函數(shù):

def index(request):
    return render(request,"index.html",{'hello':"hello!"})

修改后的HTML文件:


<body>
<h1>{{ hello }}</h1>
</body>

注意:Django查找templates的順序是按照INSTALLED_APPS中的添加順序,如果兩個(gè)應(yīng)用的模板文件名稱相同,就會(huì)造成沖突,無法達(dá)到想要的效果
解決方案:
在APP的templates目錄下創(chuàng)建以APP 為名稱的目錄,將模板文件放入其中

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容