python django restful-api的設計

1:安裝rest_framework而且放在INSTALL_APPSpython

pip install djangorestframework
pip install markdown
pip install django-filter

2:在url.py 添加django

urlpatterns = [
    url(r'^api-auth', include('rest_framework.urls'))
]

3:在須要設置配置文件的地方須要作配置這裏爲配置文件取名爲api.py,而後把配置文件導入到django 下面的setting.py 裏面,分開寫配置文件是方便查找和管理api

REST_FRAMEWORK ={
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ]
}

4:序列化一個模板例子來看下具體的api獲取的數據markdown

首先model 咱們使用比較簡單的django的Userapp

from rest_framework import serializers
from rest_framework.response import Response
from ...flow_chart.models import *
from rest_framework import viewsets


class UserSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = (
            "username",
        )


class Example(viewsets.ModelViewSet):
    queryset = User.objects.filter(id__in=[1,2,3,4,5]).order_by('-created_datetime')
    serializer_class = UserTSerializer


    def list(self, request, *args, **kwargs):
        """
        返回任用戶表
        :param request:
        :param args:
        :param kwargs:
        :return:
        """
        data = request.GET
        queryset = self.filter_queryset(self.get_queryset().
                                            filter(last_name='cxc'))
        for query in queryset:
            init_data = {
           

            }
            res['data'].append(init_data)
        return Response(res)
相關文章
相關標籤/搜索