A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 唐伯虎(0) 于 2018-11-8 11:34 编辑

环境配置   :    1. 安装DRF        pip install djangorestframework   


     2. 添加rest_framework应用
      INSTALLED_APPS = [    ...    'rest_framework',]
基本使用:   


    1. 创建序列化器
    在应用中新建serializers.py用于保存该应用的序列化器。
    创建一个BookInfoSerializer用于序列化与反序列化。
     class BookInfoSerializer(serializers.ModelSerializer):
      """图书数据序列化器"""   
     class Meta:
          model = BookInfo
          fields = '__all__'
         model 指明该序列化器处理的数据字段从模型类BookInfo参考生成
         fields 指明该序列化器包含模型类中的哪些字段,'__all__'指明包含所有字段
   
    2. 编写视图
    在应用的views.py中创建视图BookInfoViewSet,这是一个视图集合。
    from rest_framework.viewsets import ModelViewSet
    from .serializers import BookInfoSerializer
    from .models import BookInfoclass
   BookInfoViewSet(ModelViewSet):
          queryset = BookInfo.objects.all()
          serializer_class = BookInfoSerialize
  • queryset 指明该视图集在查询数据时使用的查询集
  • serializer_class 指明该视图在进行序列化或反序列化时使用的序列化器
   
    3. 定义路由
   在应用的urls.py中定义路由信息。
    from . import views
    from rest_framework.routers import DefaultRouter
    urlpatterns = [    ...]
    router = DefaultRouter()  # 可以处理视图的路由器
    router.register(r'books', views.BookInfoViewSet)  # 向路由器中注册视图集
    urlpatterns += router.urls  # 将路由器中的所以路由信息追到到django的路由列表中


   4. 运行测试
    运行当前程序(与运行Django一样)
     python manage.py runserver
    在浏览器中输入网址127.0.0.1:8000,可以看到DRF提供的API Web浏览页面:
   



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马