pip3 install djangorestframework
注册app
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework'
]
写路由
from django.conf.urls import url
from django.contrib import admin
from api import views
urlpatterns = [
url(r'^drf/info/', views.DrfInfoView.as_view()),
]
写视图
from rest_framework.views import APIView
from rest_framework.response import Response
class DrfInfoView(APIView):
def get(self,request,*args,**kwargs):
data = [
{'id': 1, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 2, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 3, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 4, 'title': '震惊了...王阳居然...', 'content': '...'},
]
return Response(data)
以后在公司参与前后端分离项目、参与为app写接口时,用drf会比较方便。
首先下载并安装好djangorestframework
pip3 install djangorestframework
在settings中注册
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework'
]
写路由
from django.conf.urls import url
from django.contrib import admin
from api import views
urlpatterns = [
url(r'^drf/info/', views.DrfInfoView.as_view()),
]
写视图
from rest_framework.views import APIView
from rest_framework.response import Response
class DrfInfoView(APIView):
def get(self,request,*args,**kwargs):
data = [
{'id': 1, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 2, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 3, 'title': '震惊了...王阳居然...', 'content': '...'},
{'id': 4, 'title': '震惊了...王阳居然...', 'content': '...'},
]
return Response(data)
urlpatterns = [
url(r'^drf/info/', views.DrfInfoView.as_view()),
]
请求进来首先执行as_view()
然后执行父类的as_view()方法,并赋值给view
执行self.dispatch方法,首先取本类DrfInfoView中找,如果没有就找父类APIView中找
原文:https://www.cnblogs.com/zhuzhizheng/p/11917697.html