django补充
cbv模式
Django的视图函数,可以基于FBV模式,也可以基于CBV模式。
基于FBV的模式就是在Django的路由映射表里进行url和视图函数的关联,而基于CBV的模式则是在views.py文件中定义视图类,在视图类中视图函数,如get,post,put,delete等
使用Django新建一个项目,新建一个路由映射
from django.conf.urls import urlfrom django.contrib import adminfrom app01 import views
urlpatterns = [
url(r'^cbv/$',views.CBV.as_view())
]
对应的views.py文件内容:
from django.shortcuts import render,HttpResponse
from django.views import View
class CBV(View):
def get(self,request):
return HttpResponse("GET")
def post(self,request):
return HttpResponse("POST")
启动项目,使用浏览器请求URLhttp://127.0.0.1:8000/cbv/
,浏览器显示结果为:
请求到达Django会先执行Django中间件里的方法,然后进行进行路由匹配。
在路由匹配完成后,会执行CBV类中的as_view方法。
CBV中并没有定义as_view
方法,由于CBV继承自Django的View
,所以会执行Django的View类中的as_view方法
postman的安装使用
下载地址: https://www.getpostman.com/apps
略。。。
详细使用: https://blog.youkuaiyun.com/jr_way/article/details/80480818
略。。。
django提供api接口
基于models的api接口
https://www.cnblogs.com/zhouyang123200/p/6606405.html
常使用的api接口
- JsonResponse(data)
from django.shortcuts import render
from django.http import HttpResponse,JsonResponse
# Create your views here.
def index(request):
data={
'name':'zhangsan',
'age':18,
}
return JsonResponse(data)
2.HttpResponse(json.dumps(data))
from django.shortcuts import render
from django.http import HttpResponse,JsonResponse
import json
# Create your views here.
def index(request):
data={
'name':'zhangsan',
'age':18,
}
return HttpResponse(json.dumps(data), content_type="application/json")
‘age’:18,
}
return HttpResponse(json.dumps(data), content_type=“application/json”)