Django創建視圖

視圖功能,或簡稱"view",是一個簡單的Python函數,它接受一個Web請求,並返回一個Web響應。此響應可以是 Web頁的HTML內容,或重定向,或404錯誤,或XML文檔,或圖像/片等。例如:使用視圖創建頁面,請注意需要將一個視圖關聯到一個URL,並把它看作一個網頁。

在Django中,視圖必須在應用程序的 views.py 文件中創建。

簡單的視圖

我們將在 myapp 創建一個簡單的視圖顯示: "welcome to yiibai !"

查看如下的視圖 −

from django.http import HttpResponse

def hello(request):
   text = """<h1>welcome to yiibai !</h1>"""
   return HttpResponse(text) 

在這個視圖中,我們使用 HttpResponse 呈現 HTML(你可能已經注意到了,我們將HTML硬編碼在視圖中)。 在這個視圖我們只是需要把它映射到一個URL(這將在即將到來的章節中討論)的頁面。

我們使用 HttpResponse 在渲染視圖 HTML 之前。 這不是渲染網頁的最佳方式。Django支持MVT模式,從而先渲染視圖,Django - MVT這是我們需要的−

一個模板文件: myapp/templates/hello.html

現在,我們的視圖內容如下:

from django.shortcuts import render

def hello(request):
   return render(request, "myapp/template/hello.html", {})

視圖還可以接受的參數 -


from django.http import HttpResponse

def hello(request, number):
   text = "<h1>welcome to my app number %s!</h1>"% number
   return HttpResponse(text) 

當鏈接到一個網址,頁面會顯示作爲參數傳遞的數值。 注意,參數將通過URL(在下一章節中討論)傳遞。