django drf框架自带的路由及最简化的视图
django-drf框架自带的路由以及最简化的视图,具体内容如下所示:
路由
一.导入模块
fromrest_framework.routersimportSimpleRouter
二.初始化路由对象
router=SimpleRouter()
三.创建路由
router=SimpleRouter() #注册各种接口路由 router.register('cars',views.CarModelViewSet,base_name='car') #car为链接的开头,views.CarModelViewSet为当路由为cars的时候的调用的函数 urlpatterns=[] urlpatterns.extend(router.urls)
其效果等同于
urlpatterns=[ url(r'^cars/$',views.CarModelViewSet.as_view()), url(r'^cars/(?P.*)/$',views.CarModelViewSet.as_view()), ]
视图
一.导入模块
fromrest_framework.viewsetsimportModelViewSet
二.创建视图逻辑
ModelViewSet源码
classModelViewSet(mixins.CreateModelMixin, mixins.RetrieveModelMixin, mixins.UpdateModelMixin, mixins.DestroyModelMixin, mixins.ListModelMixin, GenericViewSet): #所有他当中以及对于get等等的方法自动进行了封装 mixins是在generics再进行方法的分装成5个方法 RetrieveModelMixin:retrieve单取 ListModelMixin:list群取 CreateModelMixin:create单增 UpdateModelMixin:update单整体改 UpdateModelMixin:partial_update单局部改 DestroyModelMixin:destroy单删 classCarModelViewSet(ModelViewSet): queryset=models.Car.objects.filter(is_delete=False) serializer_class=serializers.CarModelSerializer ........ #querysetserializer_class必须给与 ... defget(self): 他会调用retrieve或者list方法其他也类似 .....
总结
以上所述是小编给大家介绍的djangodrf框架自带的路由及最简化的视图,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!