• rest_framework之权限详解 02


    权限问题

    1.models.py

    2.用户类型:

    3.views.py:  

    假设订单相关业务(只有SVIP用户有权限)

    假设用户信息相关业务(只有普通用户、VIP有权限)

     4.运行结果:

    基本使用

    以上的权限代码封装到一个类中,以后各个视图的get请求直接调用即可。不用每个类都写一遍权限。  

    自定义权限类: 需要找到has_permission方法

    0.看源码:

    1.

    2.

    3.复制源码has_permission方法

     4.继续定义权限类:has_permission方法返回True表示有权访问。

    5.定义好了权限类,局部使用。

    局部权限

    6.运行结果

    7.再定义一个权限,除SVIP以外,其他用户都能访问。

    8.将全权都放到另一个单独的文件中。

    然后视图文件需要则引入。

    views.py应用即可

     以上的单视图应用。全局使用怎么办呢?  

    全局权限

    1.权限源码流程:

    还是到复制源码has_permission方法这一步骤

    局部配置

    permission.py

    全局配置  settings.py

    继续看源码:

    每一个权限都有该方法 has_permission

    如果返回Fasle,则执行报错,抛出异常。

    抛出异常

    默认英文报错

    运行结果

    如何改成中文报错信息呢?

    运行结果

    内置权限

    1.内置权限源码流程

    2.为了让我们的权限更正规,必须继承该内置权限。

  • 相关阅读:
    0429 Scrum团队成立与第6-7章读后感
    0428 团队2.0
    0422 寻找数学口袋精灵BUG
    0422 Step2-FCFS调度
    0415 博客评价
    0414 结对--软件再升级(韩麒麟 列志华)
    0408 结对做汉堡
    0406 复利计算器--结对 组员 韩麒麟 列志华
    0405 构建之法第4章 读后感
    文法分析
  • 原文地址:https://www.cnblogs.com/aaronthon/p/9254550.html
Copyright © 2020-2023  润新知