簡(jiǎn)單來說,就是用來接收路由層傳來的請(qǐng)求,從而做出相應(yīng)的響應(yīng)返回給瀏覽器
超過十載行業(yè)經(jīng)驗(yàn),技術(shù)領(lǐng)先,服務(wù)至上的經(jīng)營模式,全靠網(wǎng)絡(luò)和口碑獲得客戶,為自己降低成本,也就是為客戶降低成本。到目前業(yè)務(wù)范圍包括了:成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,成都網(wǎng)站推廣,成都網(wǎng)站優(yōu)化,整體網(wǎng)絡(luò)托管,微信小程序定制開發(fā),微信開發(fā),APP應(yīng)用開發(fā),同時(shí)也可以讓客戶的網(wǎng)站和網(wǎng)絡(luò)營銷和我們一樣獲得訂單和生意!
from django.http import HttpResponse
def page_2003(request):
html = '第一個(gè)網(wǎng)頁
'
return HttpResponse(html)
# 注意需要在主路由文件中引入新創(chuàng)建的視圖函數(shù)
def test(request, num):
html = '這是我的第%s個(gè)網(wǎng)頁' % num
return HttpResponse(html)
# 添加轉(zhuǎn)換器的視圖函數(shù),request后面的參數(shù)num為path轉(zhuǎn)換器中的自定義名
同帶有轉(zhuǎn)換器參數(shù)的視圖函數(shù)
from django.http import HttpResponse,HttpResponseRedirect
def test_request(request):--注意path函數(shù)里也要綁定test_request這個(gè)路徑
return HttpResponseRedirect('page/2003/')--重定向到127.0.0.1:8000/page/2003這個(gè)頁面去
def test_get_post(request):
if request.method == 'GET':
pass
elif request.method == 'POST':
pass
使用render()直接加載并相應(yīng)模板語法:
?from django.shortcuts import render
?def test_html(request):
? return render(request, '模板文件名', 字典數(shù)據(jù))
注意視圖層的所有變量可以用local()方法全部自動(dòng)整合成字典傳到render的最后一個(gè)參數(shù)里
json格式的數(shù)據(jù)的作用:
前后端數(shù)據(jù)交互需要用到j(luò)son作為過渡,實(shí)現(xiàn)跨語言傳輸數(shù)據(jù)。
格式:
from django.http import JsonResponse
def ab_json(request):
user_dict={'username':'json,我好喜歡','password':'1243'}
return JsonResponse(user_dict,json_dumps_params={'ensure_ascii':False})
# 字典傳入時(shí)需要設(shè)置json_dumps_params格式化字符串,不然字典里的中文會(huì)報(bào)錯(cuò)
list = [111,22,33,44]
return JsonResponse(list,safe=False)
# 列表傳入序列化時(shí)需要設(shè)置safe為false ,不然會(huì)報(bào)錯(cuò)
視圖函數(shù)既可以是函數(shù)(FBV)也可以是類(CBV)
1.FBV
def index(request):
return HttpResponse('index')
2.CBV
# CBV路由
pathr'^login/',views.MyLogin.as_view())
# CBV視圖函數(shù)
from django.views import View
class MyLogin(View):
def get(self,request):
return render(request,'form.html')
def post(self,request):
return HttpResponse('post方法')
"""
FBV和CBV各有千秋
CBV特點(diǎn)
能夠直接根據(jù)請(qǐng)求方式的不同直接匹配到對(duì)應(yīng)的方法執(zhí)行