Django REST Framework 权限管理 DRF的权限管理 2.1 认证URL设置 1 2 3 urlpatterns = [ url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework') ] 2.2 全局权限控制 云计算 2023-01-04 穿过生命散发芬芳
Django 类视图 Django中有两种视图,一种是函数式视图,另一种是类视图。视图的作用主要是,用于填充逻辑,返回响应体。函数式视图难以扩展,代码复用率低。而类视图可以利用继承、Mixins,快速复用、扩展功能。本文主要讨论了,Django对类视图的处理逻辑,类视图装饰器实现。1. Django的视图Django的URL解析器,将一个HttpRequest对象和相应的参数传递给一个可调用的函数,并期待其返回一个Ht 云计算 2023-01-04 张二河
Django ORM 之 SQL 基本概念 ORM:对象关系映射,Object Relational Mapping。它的作用是在关系型数据库和对象之间作一个映射。不需要复杂的 SQL 语句,操作数据如同操作对象一样简单。 QuerySet:给定模型的对象列表。QuerySet 允许从数据库中读取数据,对其进行筛选、排序等操作。 Manager:django.db.models.manager.Manager,Django 云计算 2023-01-04 剑圣无痕
从零开始使用 Docker 打包 Django 开发环境 (1) 环境搭建 Vagrant 适合用来管理虚拟机,而 Docker 适合用来管理应用环境。为了更好地模拟真实运行环境,本系列文章借助 Docker 和 Docker Compose 搭建 Nginx + uWSGI+ Django + MySQL + Redis + Rabbit 的开发环境。1. 基本概念Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docke 云计算 2023-01-04 向阳逐梦
从零开始使用 Docker 打包 Django 开发环境 (5) Nginx 目录结构 1 2 3 4 5 6 7 8 9 10 11 12 ├── django-devops-nginx │ ├── Dockerfile │ └── nginx.repo ├── django-devops-compose │ ├── docker-compose.yml │ ├── www │ ├── conf │ │ ├── nginx.conf │ ├── log │ │ ├─ 云计算 2023-01-04 向阳逐梦
从零开始使用 Docker 打包 Django 开发环境 (6) uWSGI、Django 目录结构 django-devops-uwsgi 目录是打包 uWSGI 和 Django 的镜像编译文件。在镜像中安装 uWSGI、pip、virtualenv等必要的程序包。在使用镜像创建容器时,执行 start.sh 脚本, 创建 Python 虚拟运行环境,从 Django 的 requirements.txt 安装依赖包,最后启动 uWSGI 监听端口,等待请求。 django-d 云计算 2023-01-04 大树
Django 调试工具 djangodebugtoolbar 关于 Django 的性能 2.1 安装 1 pip install django-debug-toolbar 2.2 配置 云计算 2023-01-04 宇宙之一粟
错误码设计以及 Django 的异常统一处理 笔者目前使用 Django 从事 SaaS 开发,同时开发和维护多个 SaaS 应用。在很多 SaaS 应用中都约定了错误码,有的用于处理登录态,有的用于标记业务逻辑状态。对于这种项目共性很强的特征,花时间学习和研究是非常有必要的。本篇主要讨论了错误码的用途、如何设计错误码、使用 Django 中间件如何实现异常的处理错误码的返回。1. 错误码的用途错误码是与错误信息关联的一组数字或字母,用于约定 云计算 2023-01-04 向阳逐梦
Django Model 与 ER 图 在需求逐步确认的过程中,系统的 DB 模型也逐步确认。有时使用,MySQL Workbench 这类工具绘制 E-R 图,然后生成 MySQL 数据库表,这时就需要反向生成 Django Models;有时直接写 Django Models ,但是又需要查看 E-R 图。本文主要解决上面两个需求,实现 Django Models 与 E-R 图之间的转换。1. 生成 model 的关系图Djang 云计算 2023-01-04 大白菜程序猿
Django 开发中常用命令 创建 Django 工程 1 django-admin startproject your_project_name 创建应用 1 2 3 django-admin.py startapp your_app_name 1. 或者 python manage.py startapp your_app_name 云计算 2023-01-04 三掌柜
如何在 Django 中任意安全获取 request 在 Django 中,request 包含了一次请求的全部信息。后端处理逻辑经常需要用到 request 中的信息。比如, DRF 框架中想要随时能够获取到 request,或者将一些参数全局传递。Django 第三方 App 中有一些工具可以满足要求,但它们并不是安全可靠的。意思是,如果 Django 启动时,使用了多线程或协程,在获取 request 时,可能会发生错误。这显然是不能接受的。下 云计算 2023-01-04 宇宙之一粟
如何使用 Django Signal 解耦模块 最近,我负责开发一个重后端的应用。这个应用数据流向复杂,处理逻辑冗余堆积。项目技术栈选择的是 Django + Vuejs。前端使用 Webpack 打包,模块化管理,主要是展示数据。后端涉及的模块多,处理规则多,数据表多,每次涉及之前功能修改时,都消耗大量时间 review 代码。这让我意识到,在复杂应用中,解耦模块非常重要。下面是一些思考和实践。1. 观察者模式在实践中,我主要使用的是 Dja 云计算 2023-01-04 共饮一杯
开发 Tips(4) 主要记录最近遇到的一些开发问题,解决方法。1. WhiteNoise 转发静态文件Django 内置的静态文件服务器效率很低,而 WhiteNoise 是一个不错的替代品。具有如下特点:通常用于 PaaS 服务 支持 wsgi 应用程序,针对 Django 进行了特殊适配 配合 CDN 使用,更佳 在 Gunicorn 配合下,使用 sendfile 系统调用,处理效率非常高 相比于 Nginx, 云计算 2023-01-04 泡泡