PROJECTS · 项目

校园课程资源共享平台

毕业设计。基于 Django + Vue 3 的校园课程资源管理与共享平台:多角色权限、资源上传下载、论坛交流、AI 智能助手与积分激励一体化。

#Django#Vue 3#TypeScript#DRF#JWT

访问项目 →

它解决什么

课程资料散落在群聊、网盘和个人电脑里,共享与检索都不方便;师生之间除了课堂,也缺少一个围绕课程本身交流的地方。

这个平台(毕业设计)把四件事装进一个系统:课程资源管理(上传、下载、收藏、评论、评分)、论坛交流(发帖、评论,可设公开或指定范围可见)、AI 智能助手(集成豆包 AI 做智能问答)和积分激励(积分获取与兑换,鼓励持续参与),外加公告发布与数据统计。

三种角色

  • 学生:浏览、搜索、下载资源,收藏与评论,参与论坛,用 AI 助手,攒积分兑换奖品;
  • 教师:上传与管理课程资源,审核资源评论,查看学生情况;
  • 管理员:用户与资源管理审核、论坛管理、公告发布、积分系统管理与数据统计。

工程过程

  • 前后端分离:后端 Django 按业务域拆成 users / courses / forum / announcements / points / ai 六个应用,前端 Vue 3 单页应用通过 REST API 对接;
  • 权限:JWT 无状态认证 + 基于角色的访问控制(RBAC),三种角色各有功能边界,前端组件按 admin / teacher / student 分目录维护;
  • 数据模型先行:围绕 User、CourseResource、ForumPost、PointRecord、PrizeExchange 等核心模型组织资源流、互动流与积分流;
  • 体验细节:全局 Toast 统一消息提示、骨架屏与加载动画、主题色与样式变量可定制,响应式布局兼顾移动端。

技术栈

层 选型
后端 Django 4.2 + Django REST Framework
认证 JWT(djangorestframework-simplejwt),Django 内置密码哈希
数据库 SQLite(开发)/ MySQL(生产)
前端 Vue 3(Composition API)+ TypeScript + Vite
UI / 状态 Element Plus · Pinia · Vue Router · Axios
AI 豆包 AI(字节跳动火山方舟)

目前的状态

毕业设计,已完成并提交。系统可完整运行:多角色登录与权限隔离、资源上传下载与审核、论坛发帖评论、AI 问答、积分获取与奖品兑换、公告与数据统计均已实现,仓库内附一键启动 / 停止脚本与部署说明。

仓库说明:GitHub 公开仓库 campus-resource-platform。