
资源介绍
使用 Channels、DRF、GraphQL 和 React
内容结构
全书分为 10 章,分为两个部分:
第一部分:Django 开发基础,围绕 MVT 架构展开,包含实际案例
第二部分:Django 高级特性及生态系统应用
各章节核心内容
第 1 章:Django 基础
HTTP 基础:请求 - 响应周期、HTTP 方法(GET、POST、PUT、DELETE 等)
Web 服务器接口:CGI、WSGI(Python Web 服务器网关接口)、wsgiref 包
Web 框架概念:MVC 与 MVT 架构对比
异步处理:asyncio 模块、ASGI(异步服务器网关接口)
Django 概述:"内置电池" 理念、实用应用、可扩展性、文档与支持
第 2 章:Django 入门
安装指南:Ubuntu 和 Windows 系统的安装步骤
项目设置:使用django-admin startproject创建项目
应用创建:通过python manage.py startapp创建应用
视图与 URL 映射:定义视图函数、配置 URL 路由、路径参数
Admin 站点:自动生成的管理界面及使用方法
第 3 章:Django ORM
DB-API:Python 数据库接口规范
ORM 概念:对象关系映射的工作原理
模型定义:字段类型(CharField、IntegerField 等)、数据库配置
迁移操作:makemigrations和migrate命令
CRUD 操作:通过 Django Shell 进行数据的增删改查
模型关系:一对一、一对多、多对多关系的实现
第 4 章:Django 模板
模板对象:模板加载、render()函数、模板上下文
模板标签:{% if %}、{% for %}等条件和循环标签
表单模板:HTML 表单、Form 类、ModelForm
基于类的视图:TemplateView、CreateView、UpdateView 等通用视图
静态文件:图片、CSS 和 JavaScript 的处理
模板继承:{% include %}、{% block %}、{% extends %}标签的使用
第 5 章:Django 数据库使用
SQLAlchemy ORM:引擎、表定义、模型、会话管理
Alembic:数据库迁移工具
MongoDB:非关系型数据库的使用
安装与部署(本地和 Atlas 云服务)
交互工具(MongoDB Shell、Compass)
Python 库(PyMongo、MongoEngine、Djongo)
第 6 章:高级 Django
消息框架:基于 cookie 和会话的消息传递
认证系统:登录 / 注销、用户创建、@login_required装饰器
安全特性:防 CSRF、XSS、SQL 注入攻击
异步视图:异步处理支持、适配器函数
可重用应用:Django Debug Toolbar 等第三方应用的集成
第 7 章:Django REST API
API 基础:REST 架构约束(统一接口、无状态等)
序列化:对象与 JSON/XML 等格式的转换
Django REST Framework:
序列化器(Serializer、ModelSerializer)
视图(APIView、Generic Views、ViewSets)
路由、认证与权限
Django Ninja:轻量级 API 工具,支持异步和类型提示
第 8 章:Django GraphQL
GraphQL vs REST:灵活性、数据获取方式的差异
GraphQL 架构:类型、查询、变更、订阅
Python 实现库:
Strawberry:基于类型提示的现代实现
Graphene:成熟的 GraphQL 框架
Django 集成:Strawberry-Django 和 Graphene-Django 的使用
第 9 章:Django WebSockets
WebSocket 协议:全双工通信、握手过程
Python WebSocket:websockets 库的使用
Django Channels:
消费者(Consumers)处理 WebSocket 连接
路由配置
通道层(Channel Layers)用于消息广播
客户端模板:JavaScript 实现的 WebSocket 客户端
第 10 章:ReactJS 与 Django
React 基础:组件、虚拟 DOM、Hooks(useState、useEffect)
React 应用创建:使用 Vite 构建工具
数据交互:
Axios:与 RES