Django 课程大纲
基础入门
- Django 简介和特性
- 安装和环境设置
- 项目结构和管理命令
- MVT (Model-View-Template) 架构
- 第一个 Django 应用
模型和数据库
- 模型定义和字段类型
- 数据库迁移
- 查询集和管理器
- 模型关系 (一对多、多对多)
- 自定义模型方法
视图和 URL 配置
- 函数视图和类视图
- URL 模式和命名
- 视图参数和请求处理
- 通用视图
- 中间件
模板系统
- 模板语法和标签
- 模板继承
- 上下文处理器
- 自定义模板标签和过滤器
- 静态文件处理
表单处理
- Django Form 类
- 表单验证
- ModelForm
- 表单集 (Formsets)
- 文件上传处理
认证和授权
- 用户认证系统
- 自定义用户模型
- 权限和组
- 登录、注销和注册视图
- 基于类的权限控制
Admin 站点
- Admin 站点定制
- 模型注册和配置
- 自定义 Admin 操作
- Admin 主题和样式
- 权限和分组管理
会话和 Cookie
- 会话框架
- Cookie 处理
- 用户状态管理
- 购物车实现
缓存机制
- 缓存后端配置
- 视图缓存
- 模板片段缓存
- 低级缓存 API
- 缓存策略和最佳实践
REST API 开发
- Django REST framework 入门
- 序列化器
- 视图集和路由器
- 认证和权限
- API 版本控制
测试
- 单元测试
- 模型测试
- 视图测试
- 表单测试
- 测试客户端
安全性
- CSRF 保护
- XSS 防御
- SQL 注入防御
- 点击劫持保护
- 安全设置和最佳实践
部署
- 生产环境设置
- 静态文件收集和服务
- Gunicorn 和 Nginx 配置
- Docker 容器化
- CI/CD 流程
性能优化
- 数据库优化
- 查询优化
- 缓存策略
- 异步任务处理 (Celery)
- 负载均衡
高级主题
- 自定义模板标签和过滤器
- 信号系统
- 自定义中间件
- 国际化和本地化
- 全文搜索 (Haystack)
第三方集成
- 社交认证
- 支付集成
- 邮件发送
- 文件存储 (AWS S3)
- 实时功能 (Channels)
项目结构和最佳实践
- 应用设计原则
- 代码组织和重用
- 版本控制和协作
- 文档编写
- 代码质量和风格指南
Django 生态系统
- 常用第三方包
- Django CMS
- Wagtail
- Django 社区和资源
- 持续学习和职业发展
项目实战
- 博客系统开发
- 电子商务平台
- 社交网络应用
- RESTful API 服务