django 进阶顺序

一、巩固基础(确保地基稳固)

  1. 理解 MTV 架构

    • Model(数据建模)

    • Template(前端展示)

    • View(逻辑控制)

  2. 掌握基本功能

    • URL routing(urls.py 的使用)

    • 表单处理(Django Forms 和 ModelForms)

    • ORM 查询(增删改查 + Q/F 查询)

    • 管理后台自定义

    • 中间件(Middleware)基础用法

推荐资源:


二、进阶技能(从开发者变成“工程师”)

  1. 项目结构与模块化设计

    • 多 app 项目管理

    • 使用 settings 分环境配置(如 settings/dev.py, settings/prod.py

  2. 用户认证与权限

    • Django 的 auth 模块

    • 自定义用户模型(如使用 AbstractUser

    • 权限系统、组(Groups)与装饰器(如 @login_required, @permission_required

  3. Django 中的异步(Async)支持

    • 了解 Django 3.1+ 开始支持的 async view

    • 学会识别适合异步的场景(如 WebSocket、数据抓取)

  4. 性能优化

    • 数据库查询优化(select_related, prefetch_related)

    • 缓存(cache framework, Redis)

    • 前端静态资源收集与压缩(collectstatic、WhiteNoise)

练习建议:

  • 实现一个带用户系统的博客或论坛系统

  • 加入分页、搜索、排序

  • 尝试写测试用例(unit test)


三、实战项目 & 开发习惯提升

  1. RESTful API 开发

    • 学习 Django REST framework(DRF)

    • 掌握序列化器(Serializer)、视图类(ViewSet)等

    • Token 或 JWT 鉴权机制

  2. 部署上线

    • 熟悉部署流程(Gunicorn + Nginx + PostgreSQL + Ubuntu)

    • Docker 化部署

    • CI/CD 初步了解(GitHub Actions / GitLab CI)

  3. 自动化测试

    • 使用 pytest + coverage

    • TDD 思维训练(Test-Driven Development)

  4. 安全性提升

    • 防止 XSS / CSRF / SQL 注入

    • 使用 Django 的安全设置(如 SECURE_HSTS_SECONDSX_FRAME_OPTIONS


四、深入源码 / 原理 / 社区

  1. 阅读 Django 源码

    • 从简单的 QuerySet 入手

    • 理解中间件工作流程、请求响应生命周期

  2. 贡献开源

    • 看 Django GitHub 的 issues 或 PR

    • 尝试为小型开源项目写补丁或文档

  3. 关注社区

    • 订阅 Django Weekly / Reddit r/django

    • 关注 GitHub 热门 Django 项目

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Panier