安装
$ pip install djangorestframework $ pip install markdown
概述
Django Rest framework 的流程大概是这样的

- 建立 Models
- 依靠 Serialiers 将数据库取出的数据 Parse 为 API 的数据(可用于返回给客户端,也可用于浏览器显示)
- ViewSet 是一个 views 的集合,根据客户端的请求(GET、POST等),返回 Serialiers 处理的数据
- 权限 Premissions 也在这一步做处理
- ViewSet 可在 Routers 进行注册,注册后会显示在 Api Root 页上
- 在 urls 里注册 ViewSet 生成的 view,指定监听的 url
简单应用
1.settings中注册APP
INSTALLED_APPS = [
...
'rest_framework',
]
2.路由注册:
from rest_framework import routers
from app import views
router = routers.DefaultRouter()
# router = routers.SimpleRouter()
router.register(r'users', views.UserInfoViewSet)
urlpatterns = [
url(r'^', include(router.urls)),
]
3.编写Viewset(视图函数)
from rest_framework import viewsets
from app import models
from app import serializers
# ########### 1. 基本处理方式 ###########
class UserInfoViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows users to be viewed or edited.
"""
queryset = models.UserInfo.objects.all().order_by('-id')
serializer_class = serializers.UserInfoSerializer
4.编写serializers(Form验证及数据库操作)
from rest_framework import serializers
from app import models
class UserInfoSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = models.UserInfo
# fields = ('id', 'username', 'pwd','ug') # fields = '__all__' #显示的字段
exclude = ('ug',) #除此外的字段
depth = 1 # 0<=depth<=10 # 表联系深度
