使用REST framework

安装

$ pip install djangorestframework
$ pip install markdown

概述

Django Rest framework 的流程大概是这样的

  1. 建立 Models
  2. 依靠 Serialiers 将数据库取出的数据 Parse 为 API 的数据(可用于返回给客户端,也可用于浏览器显示)
  3. ViewSet 是一个 views 的集合,根据客户端的请求(GET、POST等),返回 Serialiers 处理的数据
    • 权限 Premissions 也在这一步做处理
  4. ViewSet 可在 Routers 进行注册,注册后会显示在 Api Root 页上
  5. 在 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   # 表联系深度

  

posted @ 2017-11-08 14:17  Mitsuis  阅读(1330)  评论(0编辑  收藏  举报