【DRF配置管理】如何在视图类使用get_objects()

原文作者:我辈李想
版权声明:文章原创,转载时请务必加上原文超链接、作者信息和本声明。

DRF应用和管理

【DRF配置管理】Django安装DRF框架并生成openapi风格文档
【DRF配置管理】如何实现JWT身份验证
【DRF配置管理】如何使用序列化:验证码、注册和登录
【DRF配置管理】如何结合ORM实现排序、模糊搜索、范围查询
【DRF配置管理】如何在视图类使用get_objects()
【DRF配置管理】如何实现RBAC页面菜单和按钮权限
【DRF配置管理】如何建立coreapi风格api接口文档
【DRF配置管理】如何建立swagger风格api接口文档



一、get_objects作用范围

get_objects一般用于获取一条、更新和删除,在ModelViewSet类中,影响retrieve、update、destroy方法,我们自定义的方法也可以用到instance = self.get_object()。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

二、‘重写’get_objects

网络上很多博客在使用drf时,都可能介绍过get_objects的重写,重写可以解决一些问题,但是也会产生一些新的疑问,这个get_objects在什么时候被应用。
我的理解是get_objects是不需要重写的,只要知道get_objects是被怎么应用的就可以灵活的使用。

我们在urls.py文件会以如下方式设置路由
在这里插入图片描述
这里可以看出来,retrieve、update、destroy方法是跟路由的int:pk相关的,其实pk在这里的作用就是get_objects实现的orm查询Target.objects.get(pk=int)。

drf视图类中提供可修改pk的参数lookup_field,通过他可以实现修改路由影响get_objects参数的效果。
在这里插入图片描述

在这里插入图片描述

按照如上设置,我们我们就以实现重写get_objects的效果了
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我辈李想

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值