首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Django Rest Framework 权限(上)

Django Rest Framework 权限(上)

作者头像
小团子
发布于 2019-07-18 03:32:51
发布于 2019-07-18 03:32:51
9800
举报
文章被收录于专栏:数据云团数据云团

Django进阶篇 Rest framework (八)

一、权限实例

  • 目录结构
  • 为模型类添加认证字段
  • 具体权限认证
  • 全局配置
  • 视图
  • 路由分发
  • 请求测试

① 目录结构

为了更好的管理各个功能组件,在 django rest framework 认证中,可以将认证类单独的拿出来,放在其它目录下,然后导入到 views.py 文件中,在权限环节也可以这么做。

在 api 这个 app 下创建一个 utils 包专门用来存放相关的组件。

② 为模型类添加认证字段

在 models.py 中定义了两个模型类,分别是

在 UserInfo 中通过为用户添加一个 user_type 字段来保证用户的身份,是普通用户,VIP 还是 SVIP,这样就可以通过用户的身份验证不同的权限。如果想要定义一个视图类,这个类中的逻辑只有超级用户才能访问。

③ 具体权限认证

可以在 utils 的 permissions.py 文件中添加

这里的 message 表示如果不通过权限的时候,错误提示信息。

这个权限类表示当用户为 SVIP 时不可通过。

这里只是判断用户的 USER_TYPE 的字段,判断用户是否有权限,也可以添加其它的逻辑进行判断。

④ 全局配置

在上一节的 Django进阶篇 Rest framework (七) 的认证中,将认证类放到了 settings.py 文件中,这样会作用到视图中的每个视图类,如果视图类想要自己进行认证,只需要重写 authentication_classes 即可,那么对于权限来说,也可以这么做。

表示每一个视图类(只要不重写 permission_classes 属性),都需要 SVIP 的用户才能访问。

⑤ 视图

在视图 view.py 中定义一个用户详情类 UserInfoView 作为测试,这里的视图和上一节的 views.py 文件是相接的。

这里的 UserInfoView 重写了 permission_classes 属性,则不会再使用 settings.py 中关于认证类的配置。表示只有 SVIP 才能访问这个类的内部。

⑥ 路由分发

在 url.py 中设置路由分发

⑦ 请求测试

在 Postman 或者浏览器发送请求,由于在 settings.py 中配置了

会对请求进行认证,所以要带这用户的 token 才能通过,进入到权限组件。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据云团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
机器学习——元学习(Meta-learning)
元学习(Meta-learning),即“学习如何学习”,是机器学习领域中一个令人兴奋且极具潜力的研究方向。它的核心目标是让机器学习系统学会高效地学习新任务,以解决传统模型对大量标注数据的需求和训练时间过长的问题。本文将深入探讨元学习的概念、关键方法及其应用场景,并通过代码示例展示如何实现元学习的核心思想。
hope kc
2024/11/21
5850
Meta Learning 入门:MAML 和 Reptile
七期飞跃计划还剩7个名额,联系小编,获取你的专属算法工程师学习计划(联系小编SIGAI_NO1)
SIGAI学习与实践平台
2019/07/15
5.4K0
Meta Learning 入门:MAML 和 Reptile
Few-Shot Learning(少样本学习)
Few-Shot Learning(少样本学习)是一种机器学习范式,旨在使模型能够在只有少量标注数据的情况下快速适应新任务或识别新的类别。这种能力对于许多实际应用场景非常重要,因为在这些场景中获取大量标注数据可能是昂贵、耗时甚至是不可能的。以下是关于Few-Shot Learning的详细解析:
jack.yang
2025/04/05
4480
Meta-Transfer Learning for Few-Shot Learning:元迁移学习的小样本学习
元学习(meta-learning)是目前广泛使用的处理小样本学习问题的方法,它的目的是在学习不同任务的过程中积累经验,从而使得模型能够快速适应新任务。比如在MAML(Model-Agnostic Meta- Learning)中,通过搜寻最优初始化状态,使得base-learner能够快速适应新任务。但是这一类元学习方法具有两个缺点:
智能生信
2021/02/04
3.7K0
Meta Learning 4: 基于优化的方法
相比较机器学习模型需要大量的标注数据进行训练,人类学习新知识和新技能的过程要更快更高效。
朴素人工智能
2021/05/28
1.4K0
Meta Learning 4: 基于优化的方法
元学习Meta-Learning—授人以鱼不如授人以渔
我们知道现在深度学习在使用大型数据集掌握一项任务(检测,分类等)方面取得了巨大的成功,但这并不是真正我们追求的“人工智能”。具体来说,我们可能训练了一个能做物理题很高分的学生,但是他也只能做物理题而已,面对数学题他只能吞下零分的命运;其次,在面对新的任务(数学题)的时候,我们的学生仍然需要大量的数据(数学题)进行训练,而在学习物理的时候积累下的学习方法(先验知识)却基本帮不上忙。
CristianoC
2020/08/06
1.2K0
使用Python实现深度学习模型:元学习与模型无关优化(MAML)
元学习(Meta-Learning)是一种通过学习如何学习来提升模型性能的技术,它旨在使模型能够在少量数据上快速适应新任务。模型无关优化(Model-Agnostic Meta-Learning, MAML)是元学习中一种常见的方法,适用于任何可以通过梯度下降优化的模型。本文将详细讲解如何使用Python实现MAML,包括概念介绍、算法步骤、代码实现和示例应用。
Echo_Wish
2024/06/30
3540
使用Python实现深度学习模型:元学习与模型无关优化(MAML)
Per-FedAvg:联邦个性化元学习
Personalized Federated Learning with Theoretical Guarantees: A Model-Agnostic Meta-Learning Approach 论文链接:https://proceedings.neurips.cc/paper/2020/file/24389bfe4fe2eba8bf9aa9203a44cdad-Paper.pdf
CV君
2022/04/18
2K0
Per-FedAvg:联邦个性化元学习
2018 ACM博士论文奖公布:伯克利博士获奖,清华姚班马腾宇荣誉提名
今日,ACM 公布最佳博士论文奖,来自 UC 伯克利的博士生 Chelsea Finn 凭借论文《Learning to Learn with Gradients》摘得桂冠。这篇论文介绍了一种基于梯度的新型元学习算法,帮助深度网络基于小型数据集解决新任务,该算法可用于计算机视觉、强化学习和机器人学等领域。
机器之心
2019/05/17
5930
Meta-learning核心思想及近年顶会3个优化方向
Meta-learning可以理解为一种求解问题的工具,下面举一个例子,通俗的说明meta-learning的作用。在正常的machine learning中,需要将数据集分成trainset和testset,模型在trainset上进行训练,在testset上评测效果。但是,在trainset上的训练过程可能导致过拟合,进而引起在testset上效果较差。如何才能设计一种面向testset上效果的训练方法呢?Meta-learning就能达到这个目的。Meta-learning直接评测在trainset训练几轮后的模型在testset上的效果,再使用这个效果作为信号计算并回传梯度,指导模型更新。Meta-learning的learn to learn,相比传统的机器学习,进行了一个两层的优化,第一层在trainset上训练,第二层在testset上评测效果。
圆圆的算法笔记
2022/09/22
8330
Meta-learning核心思想及近年顶会3个优化方向
论文精读|3rd|ICLR 2018最佳论文|全文下载|meta-learning in nonstationary
作者:Maruan Al-Shedivat, Trapit Bansal, Yura Burda等
用户7623498
2020/08/04
4510
论文精读|3rd|ICLR 2018最佳论文|全文下载|meta-learning in nonstationary
元学习综述 | 进入Meta Learning的世界(一)
Meta learning也经常被称为是learning to learn,也就是学习学习的方法。
guichen1013
2021/02/15
1.5K0
深度学习应用篇-元学习[14]:基于优化的元学习-MAML模型、LEO模型、Reptile模型
Model-Agnostic Meta-Learning (MAML): 与模型无关的元学习,可兼容于任何一种采用梯度下降算法的模型。 MAML 通过少量的数据寻找一个合适的初始值范围,从而改变梯度下降的方向, 找到对任务更加敏感的初始参数, 使得模型能够在有限的数据集上快速拟合,并获得一个不错的效果。 该方法可以用于回归、分类以及强化学习。
汀丶人工智能
2023/10/11
1.8K0
深度学习应用篇-元学习[14]:基于优化的元学习-MAML模型、LEO模型、Reptile模型
A Survey of Deep Meta-Learning:深度元学习综述
由于原论文篇幅很长,内容很丰富,在本推文中无法全部给大家展现出来,所以本文只挑选了原论文中比较重要和核心的内容进行介绍,更详细的内容请参考原论文。比如,本文只会提及元监督学习,有关强化学习和元强化学习的内容并没有提及。
智能生信
2021/02/04
1.9K0
NeurIPS 2021 | Spotlight:小样本分子性质预测新方法
分子性质预测(Molecule Property Prediction)是研究者在进行新药发现研究时经常会遇到的问题。由于新药发现研究中已知药理性质的分子(有标签样本)少,小样本学习(Few-Shot Learning)的方法在分子性质预测问题中有不错的效果。在已有的小样本的分子性质预测研究中,很多工作会选择直接使用小样本学习的经典方法,但是忽视了分子性质预测这个问题的特性,比如分子之间的关系以及同种分子在不同性质上的表现。在这篇工作中,我们提出了新的分子性质预测模型PAR,在获取分子表征的过程中加入self-attention层获取分子性质信息,创新地加入了分子关系学习和参数部分更新的策略,解决了已有工作存在的问题,在多个分子性质预测的数据集中取得了很好的效果。
DrugAI
2022/03/25
5740
NeurIPS 2021 | Spotlight:小样本分子性质预测新方法
【机器学习】元学习(Meta-learning)
元学习(Meta-learning)是机器学习中的一个重要概念,通常被称为“学习如何学习”。它使得机器不仅能够在特定任务上进行学习,还能学习如何从一个任务中迁移知识,以更高效地完成新的任务。在实际应用中,元学习常常与少样本学习(Few-shot learning)密切相关,尤其在面对数据稀缺或新任务时,能够通过少量样本进行高效学习。
云边有个稻草人
2024/12/29
5770
NeurIPS提前看 | 四篇论文,一窥元学习的最新研究进展
2019 年 NeurIPS 将于 12 月 8 日至 14 日在加拿大温哥华举行。NeurIPS 今年共收到投稿 6743 篇,其中接受论文 1429 篇,接受率达到了 21.1%。作为人工智能领域的年度盛会,每年人工智能的专家学者以及工业企业界的研发人员都会积极参会,发布最新的理论研究结果以及应用实践方面的成果。今年,国外的高校和研究机构一如既往的踊跃参加本届 NeurIPS,其中 Google 共贡献了 179 篇文章,斯坦福和卡耐基梅隆分别有 79 篇和 75 篇文章。国内的企业界腾讯上榜 18 篇、阿里巴巴上榜 10 篇,高校和研究机构中清华参与完成的文章共有 35 篇。
机器之心
2019/12/11
1.1K0
NeurIPS提前看 | 四篇论文,一窥元学习的最新研究进展
【RL Latest Tech】元强化学习(Meta Reinforcement Learning)
元强化学习是一种提升智能体适应新任务能力的技术,它让智能体不仅能学习完成当前的任务,还能在面对新的任务或环境时更快地学会新的策略。与传统的强化学习不同,元强化学习关注如何学习得更快、更高效,即学习如何学习。它让智能体在多种任务之间迁移经验,以应对任务变化或环境变化。
不去幼儿园
2024/12/03
7460
【RL Latest Tech】元强化学习(Meta Reinforcement Learning)
当小样本遇上机器学习 fewshot learning
深度学习(deep learning)已经广泛应用于各个领域,解决各类问题,例如在图像分类问题下,如图1,区分这10类目标的准确率目前可以轻松做到94%。然而,deep learning是一种data hungry的技术,需要大量的标注样本才能发挥作用。
全栈程序员站长
2022/08/11
9370
当小样本遇上机器学习 fewshot learning
Continuous Adaptation via Meta-Learning in Nonstationary and Competitive
文章链接:https://arxiv.org/pdf/1710.03641.pdf
狼啸风云
2019/01/18
1.5K1
推荐阅读
相关推荐
机器学习——元学习(Meta-learning)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档