网易云课堂课程:Django5 + Vue3 + Docker 打造企业OA系统 是一门面向全栈开发者与后端工程师的实战型课程,主要通过完整项目实践,讲解如何使用 Django、Vue.js(Vue3版本)以及 Docker 构建一个企业级 OA办公自动化系统。课程以真实企业项目开发流程为主线,覆盖从系统架构设计、后端接口开发、前端界面开发到容器化部署的完整开发过程,非常适合想提升全栈开发能力的开发者学习。
一、课程整体介绍
企业 OA(Office Automation)系统 是企业内部管理的重要平台,用于实现流程审批、员工管理、公告发布、考勤管理、任务管理等功能。本课程通过实际开发一套完整的企业OA系统,让学员掌握企业级 Web 应用开发的核心技术。
课程主要技术组合包括:
- 后端框架:Django
- 前端框架:Vue.js(Vue3 + Composition API)
- 容器化部署:Docker
- 数据库:MySQL
- 接口规范:RESTful API
通过该技术栈,可以构建一套 前后端分离 + 容器化部署 + 企业级权限管理 的现代 Web 系统架构。
二、课程适合人群
本课程主要适合以下人群学习:
- Python开发工程师
想深入学习 Django 企业级项目开发。 - Web全栈开发者
想掌握 Vue3 + Django 的前后端分离开发模式。 - 后端工程师
希望学习 RESTful API 设计与权限系统开发。 - DevOps 或运维工程师
想掌握 Docker 容器化部署与项目发布流程。 - 准备做企业管理系统项目的开发者
想通过完整项目提升实战经验。
三、课程核心技术
1、后端开发技术
课程后端部分基于 Django 构建,重点讲解:
- Django 项目架构设计
- Django ORM 数据库操作
- RESTful API 设计
- 用户认证与权限控制
- 文件上传与下载
- 日志管理与异常处理
此外还会结合:
- Django REST Framework 实现 API 接口开发
- Token 或 JWT 登录认证机制
2、前端开发技术
前端部分使用 Vue.js 最新版本 Vue3,主要内容包括:
- Vue3 组件开发
- Composition API 编程模式
- 路由管理(Vue Router)
- 状态管理(Pinia / Vuex)
- 前端权限控制
- 表格、表单和图表组件开发
界面通常会结合企业级 UI 组件库,例如:
- Element Plus
3、Docker容器化部署
课程还会讲解如何使用 Docker 实现项目容器化部署,包括:
- Docker 基础原理
- 编写 Dockerfile
- 构建镜像
- Docker Compose 多容器部署
- 前后端项目容器化运行
- 项目上线部署流程
通过 Docker,可以实现:
- 一键部署
- 环境一致性
- 快速扩展系统
四、企业OA系统功能模块
课程最终开发的企业OA系统通常包含多个核心功能模块,例如:
1、用户管理系统
- 用户注册与登录
- 员工信息管理
- 部门管理
- 角色权限管理
2、审批流程系统
- 请假审批
- 报销审批
- 出差审批
- 自定义审批流程
3、公告管理
- 发布企业公告
- 公告浏览
- 公告分类管理
4、任务管理
- 创建任务
- 指派任务
- 任务进度管理
5、文件管理
- 文件上传下载
- 文件分类管理
6、系统管理
- 系统日志
- 权限配置
- 菜单管理
通过这些模块,可以完整模拟企业办公系统的真实业务流程。
五、课程项目开发流程
课程按照真实企业项目流程进行开发,一般包括以下阶段:
- 需求分析与系统设计
- OA系统功能规划
- 数据库表结构设计
- 后端系统开发
- Django项目初始化
- API接口开发
- 权限系统设计
- 前端系统开发
- Vue3项目搭建
- 页面布局设计
- 接口数据对接
- 前后端联调
- API调试
- 数据交互优化
- Docker部署
- 构建容器镜像
- 容器编排
- 项目上线部署
六、课程学习收获
完成课程学习后,学员可以掌握:
- Django 企业级项目开发
- Vue3 前端开发技术
- 前后端分离开发模式
- 企业权限系统设计
- RESTful API 架构设计
- Docker 容器化部署
- 企业OA系统完整开发流程
同时还能获得一个 完整可运行的企业级项目案例,对求职或接项目都有很大帮助。
七、课程就业方向
学习完成后,可从事以下岗位:
- Python Web开发工程师
- Django后端工程师
- Web全栈开发工程师
- 企业系统开发工程师
- DevOps工程师
在互联网公司、软件外包公司、企业信息化部门等都有广泛需求。

课程目录:
├── [1.10]–【入门】模板语法(2)_ev.mp4
├── [1.11]–【入门】模板语法(3)(替换数组)_ev.mp4
├── [1.12]–【入门】模板语法(4)_ev.mp4
├── [1.13]–【入门】模板语法(5)_ev.mp4
├── [1.14]–【入门】计算属性_ev.mp4
├── [1.15]–【入门】监听-ref函数定义的属性_ev.mp4
├── [1.16]–【入门】监听-reactive函数定义的属性_ev.mp4
├── [1.17]–【入门】生命周期函数_ev.mp4
├── [1.18]–【入门】自定义组件-定义属性_ev.mp4
├── [1.19]–【入门】自定义组件-定义事件_ev.mp4
├── [1.1]–【准备】Node环境安装_ev.mp4
├── [1.20]–【入门】自定义组件-定义v-model_ev.mp4
├── [1.21]–【入门】自定义组件-插槽基本使用_ev.mp4
├── [1.22]–【入门】自定义组件-具名插槽_ev.mp4
├── [1.23]–【入门】自定义组件-具名作用域_ev.mp4
├── [1.24]–【VueRouter】创建routerdemo项目_ev.mp4
├── [1.25]–【VueRouter】路由对象的创建_ev.mp4
├── [1.26]–【VueRouter】路由导航和展示_ev.mp4
├── [1.27]–【VueRouter】嵌套路由_ev.mp4
├── [1.28]–【VueRouter】路由传参的两种方式_ev.mp4
├── [1.29]–【VueRouter】编程式导航_ev.mp4
├── [1.2]–【准备】VSCode和配套插件_ev.mp4
├── [1.30]–【VueRouter】导航守卫_ev.mp4
├── [1.31]–【VueRouter】路由元信息_ev.mp4
├── [1.32]–【Pinia】创建piniademo项目_ev.mp4
├── [1.33]–【Pinia】pinia的基本使用_ev.mp4
├── [1.34]–【Pinia】pinia实战案例_ev.mp4
├── [1.3]–【入门】Vue项目创建和结构介绍_ev.mp4
├── [1.4]–【入门】vue文件结构介绍_ev.mp4
├── [1.5]–【入门】组合式API_ev.mp4
├── [1.6]–【入门】组合式API中修改组件名称_ev.mp4
├── [1.7]–【入门】使用ref定义响应式变量_ev.mp4
├── [1.8]–【入门】使用reactive定义响应式变量_ev.mp4
├── [1.9]–【入门】模板语法(1)_ev.mp4
├── [2.10]–【DRF】类视图-APIView使用详解_ev.mp4
├── [2.11]–【DRF】类视图-Mixin使用详解_ev.mp4
├── [2.12]–【DRF】类视图-GenericAPIView使用详解_ev.mp4
├── [2.13]–【DRF】类视图-ViewSet视图集_ev.mp4
├── [2.14]–【DRF】权限认证-认证流程分析_ev.mp4
├── [2.15]–【DRF】权限认证-手动实现JWT认证(1)_ev.mp4
├── [2.16]–【DRF】权限认证-手动实现JWT认证(2)_ev.mp4
├── [2.17]–【DRF】权限认证-权限管理_ev.mp4
├── [2.18]–【DRF】限速节流(1)_ev.mp4
├── [2.19]–【DRF】限速节流(2)_ev.mp4
├── [2.1]–【DRF】DRF介绍和安装_ev.mp4
├── [2.20]–【DRF】分页配置_ev.mp4
├── [2.21]–【DRF】异常处理_ev.mp4
├── [2.2]–【DRF】Postman使用介绍_ev.mp4
├── [2.3]–【DRF】项目准备工作_ev.mp4
├── [2.4]–【DRF】DRF初体验_ev.mp4
├── [2.5]–【DRF】序列化-序列化的定义_ev.mp4
├── [2.6]–【DRF】序列化-序列化的使用_ev.mp4
├── [2.7]–【DRF】序列化-模型序列化_ev.mp4
├── [2.8]–【DRF】序列化-序列化的嵌套_ev.mp4
├── [2.9]–【DRF】请求和响应_ev.mp4
├── [3.10]–【项目实战】创建前端项目_ev.mp4
├── [3.11]–【项目实战】frame和login结构搭建_ev.mp4
├── [3.12]–【项目实战】登录页面实现_ev.mp4
├── [3.13]–【项目实战】前端登录功能实现_ev.mp4
├── [3.14]–【项目实战】用户和token信息管理_ev.mp4
├── [3.15]–【项目实战】用async和await改写Ajax请求_ev.mp4
├── [3.16]–【项目实战】集成ElementPlus_ev.mp4
├── [3.17]–【项目实战】优化登录失败提示_ev.mp4
├── [3.18]–【项目实战】Frame页面结构搭建._ev.mp4
├── [3.19]–【项目实战】侧栏菜单栏实现_ev.mp4
├── [3.1]–【项目实战】后端项目创建_ev.mp4
├── [3.20]–【项目实战】折叠和展开菜单栏功能_ev.mp4
├── [3.21]–【项目实战】header组件布局_ev.mp4
├── [3.22]–【项目实战】解决authStore的小bug_ev.mp4
├── [3.23]–【项目实战】未登录限制访问_ev.mp4
├── [3.24]–【项目实战】退出登录功能实现_ev.mp4
├── [3.25]–【项目实战】使用中间件实现登录校验_ev.mp4
├── [3.26]–【项目实战】修改密码功能后端实现_ev.mp4
├── [3.27]–【项目实战】修改密码对话框实现_ev.mp4
├── [3.28]–【项目实战】修改密码功能前端实现_ev.mp4
├── [3.29]–【项目实战】考勤相关模型创建_ev.mp4
├── [3.2]–【项目实战】跨域请求配置_ev.mp4
├── [3.30]–【项目实战】考勤视图集和序列化功能(1)_ev.mp4
├── [3.31]–【项目实战】考勤视图集和序列化功能(2)_ev.mp4
├── [3.32]–【项目实战】考勤视图集和序列化功能(3)_ev.mp4
├── [3.33]–【项目实战】考勤视图集和序列化功能(4)_ev.mp4
├── [3.34]–【项目实战】考勤视图集和序列化功能(5)_ev.mp4
├── [3.35]–【项目实战】请假类型和审批者API实现_ev.mp4
├── [3.36]–【项目实战】个人考勤页面简单布局_ev.mp4
├── [3.37]–【项目实战】发布考勤对话框实现_ev.mp4
├── [3.38]–【项目实战】前端获取请假类型和审批者_ev.mp4
├── [3.39]–【项目实战】发起请假前端功能实现_ev.mp4
├── [3.3]–【项目实战】重写User模型_ev.mp4
├── [3.40]–【项目实战】个人考勤列表展示_ev.mp4
├── [3.41]–【项目实战】个人考勤列表分页(1)-后端实现_ev.mp4
├── [3.42]–【项目实战】个人考勤列表分页(2)-前端实现_ev.mp4
├── [3.43]–【项目实战】折叠侧边栏后table标签宽度自适应_ev.mp4
├── [3.44]–【项目实战】下属考勤页面布局实现_ev.mp4
├── [3.45]–【项目实战】OAMain组件封装_ev.mp4
├── [3.46]–【项目实战】OAPagination组件封装_ev.mp4
├── [3.47]–【项目实战】OADialog组件封装_ev.mp4
├── [3.48]–【项目实战】个人考勤列表bug解决_ev.mp4
├── [3.49]–【项目实战】下属考勤信息展示_ev.mp4
├── [3.4]–【项目实战】修改OAUser模型主键_ev.mp4
└── [3.50]–【项目实战】处理考勤对话框显示_ev.mp4
