详情

全站展示位

如何在 Django 与 DRF 中优雅地校验权限 | Shawn's Blog

0X00 Django 中的权限结构、定义我们知道在创建了一个 Django 项目之后,默认就有两个公开可用的 model:User 和 Group,这两个 model 的一项功能就是用来做权限管理的。系统中会有很多项权限,单个 user 可以配置拥有哪些权限,也可以将权限配置给 group。然后校验单个权限的时候其实就是将 user 本身的权限,和 user 所在的所有组的权限做一个并集,看本次。。。

推荐

标签: format | Shawn's Blog

分享我的知识、经验、生活与感悟

关于我 | Shawn's Blog

菜鸡程序员、游戏玩家、GTD 践行者、年更UP主 称呼:Shawn、耗子 兴趣:看火影、转魔方、玩电脑、玩游戏、看书、看科普、玩弄各种电子产品。。。 Github:

如何在 Django 与 DRF 中优雅地校验权限 | Shawn's Blog

0X00 Django 中的权限结构、定义我们知道在创建了一个 Django 项目之后,默认就有两个公开可用的 model:User 和 Group,这两个 model 的一项功能就是用来做权限管理的。系统中会有很多项权限,单个 user 可以配置拥有哪些权限,也可以将权限配置给 group。然后校验单个权限的时候其实就是将 user 本身的权限,和 user 所在的所有组的权限做一个并集,看本次

Linux 目录结构 理解Linux目录树 | Shawn's Blog

0X00 Linux文件目录结构  我们在Windows环境下的文件目录结构大概是几个盘符,C盘D盘E盘…但是在Linux下是树状图(其实Windows内部也是树状图)。Linux下一个主要目录是/根目录,其他所有目录都在根目录下,其他的磁盘或者分区也都挂载在根目录下。   挂载:比如我的/media/shawn/new_disk是一个空的目录,那我就可以把一个分区挂载到这个目录下,就相当于你挂了

心灵鸡汤

小故事、鞋带

  有一位表演大师上场前,他的弟子告诉他鞋带松了。大师点头致谢,蹲下来仔细系好。等到弟子转身后,又蹲下来将鞋带解松。

  有个旁观者看到了这一切,不解地问:“大师,您为什么又要将鞋带解松呢?大师回答道:“因为我饰演的是一位劳累的旅者,长途跋涉让他的鞋带松开,可以通过这个细节表现他的劳累憔悴.”

  “那你为什么不直接告诉你的弟子呢?”

  “他能细心地发现我的鞋带松了,并且热心地告诉我,我一定要保护他这种热情的积极性,及时地给他鼓励,至于为什么要将鞋带解开,将来会有更多的机会教他表演,可以下一次再说啊。”

列表展示

主站展示位

Python 奇技淫巧 (五) 系统脚本 | Shawn's Blog

文章中的代码仅在Python3中测试成功,没有在Python2中测试。 0X00 退出程序,显示错误信息写脚本的时候经常会有执行出错,出错的时候可以用一句话把程序退出并且打印错误信息raise SystemExit('error message') 0X01 输入密码有的时候需要输入用户名和密码,使用input()输入用户名自然没有问题,但是用相同的方法输入密码的时候时使用明文的

Shawn's Blog

分享我的知识、经验、生活与感悟

Linux 目录结构 理解Linux目录树 | Shawn's Blog

0X00 Linux文件目录结构  我们在Windows环境下的文件目录结构大概是几个盘符,C盘D盘E盘…但是在Linux下是树状图(其实Windows内部也是树状图)。Linux下一个主要目录是/根目录,其他所有目录都在根目录下,其他的磁盘或者分区也都挂载在根目录下。   挂载:比如我的/media/shawn/new_disk是一个空的目录,那我就可以把一个分区挂载到这个目录下,就相当于你挂了

写给新手的 Iptables 使用说明 | Shawn's Blog

0X00 基础知识常用 Linux 的各位估计都知道 iptables、firewalld 和 ufw 这三个工具吧,或者还知道 netfilter 这个内核组件。但是他们究竟是什么关系呢?从关系上来讲,可以将他们分成三层:最底层是 Linux 的安全框架 netfilter,上面是用来操作 netfilter 的 iptables,再上层是 firewalld 和 ufw。 其中 firewa

C语言中的Bool类型 | Shawn's Blog

最近在网上看到有的说法里是没有bool类型的,不过以前在书上好像看到过相关的介绍,就特意找出来了那本书《C Primer Plus》,确定了C语言里确实存在bool类型。C语言是在C99标准中添加的bool类型。 bool类型是以英国数学家 * George Boole * 命名的,是他开发了用线性代数表示并解决逻辑问题的系统。   在C语言中我们使用 _Bool 来定义bool类型的变量

标签: Storage | Shawn's Blog

分享我的知识、经验、生活与感悟

关于 Sudo 命令也许你需要知道的 | Shawn's Blog

0X00 介绍不管对 sudo 的了解具体有多少,至少应该都用过 sudo 命令来临时将自己的非 root 用户提权至 root 了吧。不过 sudo 当然不只是将用户变成 root 的这么一个简单工具了,虽然它确实是将用户临时变更为 root ,但是页还是有不少其他更加细致的配置与选项。 sudo 是 Linux 中的一个命令,用于以管理员身份执行命令。它允许普通用户在不切换到 root 用户

标签: Link | Shawn's Blog

分享我的知识、经验、生活与感悟

Linux权限控制列表 ACL修改 | Shawn's Blog

0X00 ACL是什么ACL的全称是Access Control List访问控制列表。在Linux中可以给文件设置权限,-rwx-rw-rw这样,但是这里并不能细分,只能分到用户、组、其他用户。如果我想给某个单独的用户设置权限的话是做不到的。所以有了ACL的出现。通过ACL可以给Linux下的文件提供详细的访问控制,比如我们在设置了基本的rwx权限之后,可以通过ACL在细分用户对文件的权限。

Shell 中的文本处理【简】 | Shawn's Blog

0X00 前言在这里介绍 Shell 脚本编程和日常的命令行操作中最常用的 9 个命令,希望对读到这篇文章的你有所帮助~ 这是一篇基础得不能再基础的内容,如果你看完还能有两三个收获的话,那就一起来恶补 Linux 知识吧🤣 0X01 catcat 命令应该是学习 Linux 命令时候最早接触到的命令之一了,自然不用多说什么,这里只提一个用法:如何 cat 命令创建一个文件。例如在脚本中我们需

MySQL慢查询初步 | Shawn's Blog

0X00 IO总是比运算慢众所周知计算机的IO都要比计算慢很多很多,即时是目前民用的高级SSD:三星970PRO,它的读写速度都要比内存慢上几个数量级,更不要说CPU了。所以软件的IO通常都是瓶颈,很多时候都是CPU等内存,内存等磁盘,磁盘等网络。 那么如何才能提升自己web服务的响应速度呢?通常来说简单的操作有如下两种:换硬盘或者改SQL。 0X01 换硬盘“这难道不是废话吗?”对呀,这就是废话

你为什么需要会用 Tmux | Shawn's Blog

0X00 简单介绍想必看到这篇博客的各位肯定会经常工作在 Terminal 中吧,而且对自己稍微好一些的人应该也都会配置一下自己的终端环境,比较常见的就是 Linux 下装个 terminator 或者 macOS 下装一个 iTerm2 这种软件,然后再用 zsh 配合不同的主题和插件完善自己的体验。而且真正用过一段时间终端的人肯定都会有那种一个窗口不够用的情况,那么你可能要用到终端模拟器(te

2023 年度总结 | Shawn's Blog

片头胡诌要说 2023 年跟前几年比起来有什么最大的变化,那应该就是防疫了吧。连续了三年的疫情或者说防疫,终于在 2023 年到来的时候结束了。本以为到了新的一年能报复性娱乐一把,但是低头看了看兜里的钱,抬头看了看当前的经济形势,一怒之下就…在床上翻了个身 😮‍💨 不过话虽这么说,毕竟防控还是没有了,今年出行便利程度直接拉满(其实只是回到了应该有的样子而已)。不然按照之前的操作,根本不敢想今年

标签: setattr | Shawn's Blog

分享我的知识、经验、生活与感悟

Python中的线程、进程池 | Shawn's Blog

0X00 线程池和进程池多线程和多进程在平时编程中是挺常见的操作,不过控制进程和线程的数量是一件比较麻烦的事情。尤其是线程,之前在搜索到的关于线程池的内容多数都是“造轮子”,实际上Python已经给我们造好了这个轮子。文档在这里,甚至还是中文的

如何让自己的Linux/macOS终端更好用 | Shawn's Blog

0X00 视频在这里 下面是配置文件这篇博客要配合发在bilibili的视频来看,这个文件是在~/.zshrc的。大家有问题直接在视频下面留言或者直接给我私信好了~

博客寄语:

    分享我的知识、经验、生活与感悟

实时播报:

博客号-学习成长

相信每一分耕耘都有每一分收获,致力帮助博客主所创作的博客能更快的被收录! 如果有其它需求,可联系下方邮箱。