password
查看人数
type
status
date
slug
summary
category
icon
tags
作者
状态
ModelViewSet 重写和继承
如果你想要在ModelViewSet的原有方法后面添加一些其他操作,你重写ModelViewSet的方法,并且在调用super()方法之后,加入你的自定义逻辑。例如:
这样,你就可以在保留ModelViewSet的原有功能的同时,添加一些自定义的操作。
ModelViewSet的增删改查的方法分别是:
- create(self, request, *args, **kwargs):用于创建一个新的模型实例,对应POST请求。
- list(self, request, *args, **kwargs):用于列出所有的模型实例,对应GET请求。
- retrieve(self, request, *args, **kwargs):用于获取一个指定的模型实例,对应GET请求。
- update(self, request, *args, **kwargs):用于更新一个指定的模型实例,对应PUT请求。
- partial_update(self, request, *args, **kwargs):用于部分更新一个指定的模型实例,对应PATCH请求。
- destroy(self, request, *args, **kwargs):用于删除一个指定的模型实例,对应DELETE请求。
list可以通过表字段搜索
默认的list无法通过表字段查询
例如,如果我们想要过滤MyModel模型的id为1的数据,我们可以向API发送以下请求:
GET /mymodels/?id=1
这将返回一个只包含id为1的数据的JSON响应。同样的,如果我们想要过滤MyModel模型的name为"John"的数据,我们可以向API发送以下请求:
GET /mymodels/?name=John
这将返回一个只包含name为"John"的数据的JSON响应。- 作者:躁静有徒
- 链接:https://blog.zaojingyoutu.top//article/9e62da3c-937c-84c6-a644-35ff2ec510e4
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章