Django REST框架构建Web API。Django网络应用开发的5项基础核心技术包括模型(Model)的设计,URL 的设计与配置,View(视图)的编写,Template(模板)的设计和Form(表单)的使用。
from rest_framework import viewsets
list() 提供一组数据
retrieve() 提供单个数据
create() 创建数据
update() 更新保存数据
destory() 删除数据
二、ViewSet 视图集类不再实现get()、post()等方法,而是实现动作 action,如 list() 、create() 等。
视图集只在使用as_view()方法的时候,才会将action动作与具体请求方式对应上
class BookViewSet(viewsets.ViewSet):
def list(self, request):
...
def retrieve(self, request, pk=None):
设置路由
urlpatterns = [
url(r'^books/$', BookViewSet.as_view({'get':'list'}),
url(r'^books/(?P<pk>\d+)/$', BookViewSet.as_view({'get': 'retrieve'}),
]
三、action 属性
在视图集中, 可以通过 action 对象属性来获取当前请求视图集的action的动作是谁
def get_serializer_class(self):
if self.action == 'create':
return BookCreateSerializer
else:
return BookListSerializer
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有