什么是rest_framework

1
2
rest_framework简称drf
rest_framework是基于django与RESTful API规范设计的框架。

drf的简单使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
1.安装
pip install djangorestframework

2.注册
在django的配置文件中进行注册,drf本质是一个app,所以我们在注册app的地方注册即可

3.进行数据迁移
python manage.py makemigrations
python manage.py migrate

4.新写一个序列化器类
from rest_framework import serializers
class Book(serializers.Serializer):
#写字段
id = serializers.IntegerField(read_only=True)
name = serializers.CharField(min_length=3, max_length=32)
price = serializers.DecimalField(max_digits=5, decimal_places=2)
publish = serializers.CharField(max_length=32)

5.视图函数中创建类,以及在路由中配置路由
#路由
url(r'^books/', views.Books.as_view()),

#视图 返回的Response是drf的Response
class Books(APIView):
def get(self, request):
books = models.Book.objects.all()
book_ser = ser.Book(instance=books, many=True) # 传入一个queryset对象,序列器会自动帮你转化为字典
return Response(book_ser.data)
ps:序列器对象中的参数
many:若是多个对象要使该参数为true
instance:传入你实例化的对象
data:传入一个反序列化的数据