Django
restframework 中的 Viewset 和 Serializer
· ☕ 4 分钟
1. Django 中的 View Class 首先回忆一下,Django 对请求的处理逻辑。收到一次请求之后,Django 会生成一个 WSGIHandler 类型的 handler,由 handler 控制整个处理流程。 那么,请求的 URL 与 View 是如何关联的呢? Django 首先根据 ROOT_URLCONF 的配置加载 URLconf,按顺序逐个匹配 URLconf 的 URLp

Django 全栈优化指南
· ☕ 6 分钟
由于数据量剧增,系统响应很慢。对应用系统进行了一系列的优化工作,系统响应时间得到了数量级级别的优化效果。总体看,在压缩文件、加快网络访问方面的优化,对前端性能有显著提升效果。在存储过程、缓存、逻辑代码方面的优化,对后端性能提升有显著效果。本

Celery 处理大文件失败问题排查与解决
· ☕ 3 分钟
1. 一个小需求 经常遇到一些小的需求,但是实现起来并不简单。这里就有一个文件上传的简单需求,分为下面几个步骤: 用户在页面上传一个大文件 大文件会被暂存在内网的 Ceph 后台任务,将 Ceph 中的大文件,下载到 Docker 内 后台任务,将 Docker 中的大文件,上传到外网的 COS 后台使用的

Python 与 Django 开发实践
· ☕ 9 分钟
整理自「开发 Tips」系列,汇总 Python 与 Django 开发中的常见问题与解决方法。 1. Python 可迭代对象的排序 可迭代对象 iterable 主要包括 3 类: 全部序列类型,比如 list(列表)、str(字符串)、tuple(元组) 部分非序列类型,比如 dict(字典)、file(文件) 包

如何使用 Django Signal 解耦模块
· ☕ 4 分钟
最近,我负责开发一个重后端的应用。这个应用数据流向复杂,处理逻辑冗余堆积。项目技术栈选择的是 Django + Vuejs。前端使用 Webpack 打包,模块化管理,主要是展示数据。后端涉及的模块多,处理规则多,数据表多,每次涉及之前功能修改时,都消耗大量时间 review 代码。这