一、项目简介
基于Python的校内求职互助平台
校内求职互助平台是一套面向高校学生的前后端分离求职交流系统。后端采用 Flask、Flask-SQLAlchemy、Flask-JWT-Extended 和 MySQL,前端采用 Vue 3;系统将求职帖子、分类、评论、在线简历、私信、公告和后台运营管理整合到统一平台中。
后端实际划分了认证、帖子、评论、消息、简历、公告和管理员路由,并对应用户、帖子、分类、评论、消息、简历和公告数据模型。学生可进行求职信息分享与交流,管理员负责平台内容与用户维护。
二、系统功能
1.1 用户端功能
注册登录与个人资料
用户可注册和登录平台。后端使用 JWT 生成并验证访问令牌,受保护的帖子发布、简历、私信及个人资料接口只能在登录后访问;用户可在个人中心维护基础信息。
求职互助帖子与分类浏览
用户可浏览求职互助广场中的帖子,按分类查看或筛选内容,并进入帖子详情了解内推机会、面经分享、求职经验等信息。帖子模块支持用户发布、编辑和管理本人内容。
评论互动
用户可在帖子详情下发表评论,参与求职经验交流。评论数据与帖子关联保存,形成从帖子发布、浏览到评论互动的内容闭环。
在线简历管理
用户可创建和维护在线简历,将个人教育、技能、项目或求职相关信息集中保存,便于在求职互助场景中展示和持续更新。
私信沟通与公告查看
用户可通过消息模块向其他用户发送私信,进行内推、岗位和经验相关沟通;同时可查看平台公告,及时了解平台规则和求职活动信息。
1.2 管理员端功能
数据看板与运营概览
管理员可进入后台查看用户、帖子、评论等平台数据概览,为了解求职交流活跃度和日常运营情况提供依据。
用户与帖子管理
管理员可维护用户账号与基础资料,查看并管理平台帖子,及时处理不符合平台规范的内容,保障交流环境有序。
分类、评论与公告管理
管理员可维护帖子分类,管理评论内容,并发布、修改或删除公告。分类和公告数据会直接影响用户端的内容组织和通知展示。
三、技术栈
| 层级 | 技术 | 说明 |
|---|---|---|
| 后端框架 | Python 3.9、Flask 2.3.3 | RESTful API 服务 |
| 数据访问 | Flask-SQLAlchemy 3.1.1、PyMySQL | ORM 与 MySQL 连接 |
| 身份认证 | Flask-JWT-Extended 4.5.3 | JWT 登录令牌与权限控制 |
| 跨域支持 | Flask-CORS 4.0.0 | 前后端跨域请求支持 |
| 前端 | Vue 3、Vue Router、状态管理与 Axios | 用户端和后台页面 |
| 数据库 | MySQL | 用户、帖子、简历、消息、评论和公告数据存储 |
四、项目结构
c71/
├── backend/
│ ├── app/
│ │ ├── models/
│ │ │ ├── user.py # 用户模型
│ │ │ ├── post.py # 求职帖子模型
│ │ │ ├── category.py # 分类模型
│ │ │ ├── comment.py # 评论模型
│ │ │ ├── resume.py # 在线简历模型
│ │ │ ├── message.py # 私信模型
│ │ │ └── notice.py # 公告模型
│ │ ├── routes/ # 认证、帖子、评论、简历、消息、公告和后台接口
│ │ ├── utils/ # JWT、权限装饰器和响应封装
│ │ ├── config.py # 数据库等配置
│ │ └── extensions.py # Flask 扩展初始化
│ ├── seed_data.sql # 初始化数据
│ ├── requirements.txt # 后端依赖
│ └── run.py # 服务启动入口
├── frontend/
│ └── src/
│ ├── api/ # 接口请求封装
│ ├── views/ # 用户端和后台页面
│ ├── router/ # 路由配置
│ └── store/ # 状态管理
└── README.md
五、环境要求
- Python 3.9+
- MySQL 5.7+
- Node.js 16+
- npm
六、数据库初始化
项目初始化数据脚本为 backend/seed_data.sql。创建数据库后导入脚本,并在 backend/app/config.py 中修改本机 MySQL 连接配置;中文数据建议使用 utf8mb4。
mysql -u root -p --default-character-set=utf8mb4 < backend/seed_data.sql
七、后端启动
cd backend
pip install -r requirements.txt
python run.py
八、前端启动
cd frontend
npm install
npm run dev
九、默认账号
项目未提供可确认的默认账号,请以 backend/seed_data.sql 中的初始化数据为准。
十、业务流程说明
9.1 求职内容交流流程
用户登录后进入求职互助广场,浏览分类帖子或发布自己的内推、面经和求职经验内容。其他用户进入详情页查看内容并发表评论,系统将帖子、分类和评论关联保存,用户可在个人中心管理本人发布记录。
管理员在后台查看帖子和评论,对平台内容进行维护;分类调整后会影响用户端的内容归类与筛选结果。
9.2 简历与私信沟通流程
用户先在在线简历模块维护个人求职资料,再通过私信模块与其他用户沟通岗位、内推或经验信息。消息记录与用户账号关联保存,用户可持续查看往来沟通内容。
十一、交付内容
- 项目完整源码,包含 Flask 后端与 Vue 前端代码。
- 数据库初始化脚本
backend/seed_data.sql。 - 项目说明文档,包含功能说明、技术栈、运行环境、数据库初始化与启动步骤。
本项目为个人原创,结构清晰,功能完整,适合课程设计、毕业设计和个人学习使用。如需购买项目成品或定制化需求可以联系作者。