- 視圖(接收請求返回響應那部分)
CBV(class base view)和FBV(function base view) request對象 1. request.method => 獲取請求的方法(GET、POST等) 2. request.GET => 通常用來獲取URL里面的參數(shù) 127.0.0.1:8000/edit_book/?id=1&name=yimi request.GET => {"id":1, "name":"yimi"} request.GET.get("id") 3. request.POST => 用來獲取POST提交過來的數(shù)據(jù) request.POST.get("book_name") 4. request.path_info => 獲取用戶請求的路徑(不包含IP和端口和URL參數(shù)) 5. request.body => 這個用的比較少 response對象 1. HttpResponse => 返回字符串內容 2. render => 返回一個html頁面 3. redirect => 返回一個重定向(告訴瀏覽器再去訪問另外的網(wǎng)址) 4. JsonResponse => 返回一個Json字符串
舉例說明
JsonResponse
from django.http import JsonResponse
def main(request):
a = {'a':'1', 'b':'2','c':'3'}
return JsonResponse(a)
CBV
from django.views import View
# CBV model
class cbvtest(View):
def get(self, request):
return HttpResponse(b"ok")
def post(self, request):
pass
url(r'^cbvtest/', views.cbvtest.as_view())