1、安装DRF
pip install djangorestframework
2、添加rest_framework应用
在settings.py的INSTALLED_APPS中添加’rest_framework’。
INSTALLED_APPS = [
...
'rest_framework',
]
3、创建序列化器
在子应用目录下创建serializers.py用于保存该应用的序列化器。
序列化器命名:模型类名+Serializers
class ModelSerializer(serializers.ModelSerializer):
"""图书数据序列化器"""
class Meta:
model =Model
fields = '__all__'
model 指明该序列化器处理的数据字段从模型类BookInfo参考生成
fields 指明该序列化器包含模型类中的哪些字段,'all’指明包含所有字段
4、编写视图
在子应用下的views.py中创建视图
from rest_framework.viewsets import ModelViewSet
from .serializers import ModelSerializer
from .models import Model
class BookInfoViewSet(ModelViewSet):
queryset = Model.objects.all()
serializer_class = ModelSerializer
queryset 指明该视图集在查询数据时使用的查询集
serializer_class 指明该视图在进行序列化或反序列化时使用的序列化器
5、定义路由
from . import views
from rest_framework.routers import DefaultRouter
urlpatterns = [
...
]
router = DefaultRouter() # 可以处理视图的路由器
router.register(r'books', views.ModelViewSet) # 向路由器中注册视图集
urlpatterns += router.urls # 将路由器中的所以路由信息追到到django的路由列表中