# course_work_hub **Repository Path**: thiswind/course_work_hub ## Basic Information - **Project Name**: course_work_hub - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-10 - **Last Updated**: 2025-06-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 移动应用软件开发实训 - 学生作业提交系统 这是一个基于Flask的学生作业收集系统,用于收集学生的三次实验作业。 ## 功能特点 - 智能认证系统(首次登录用学号+姓名,后续用学号+密码) - 支持三个实验的作业提交(实验一、实验二、实验三) - 只接受PDF格式的作业文件,自动重命名为 `实验X-学号-姓名.pdf` - 自动生成16位强密码,确保数据安全 - 文件预览、删除、重新上传功能 - 响应式界面设计 ## 快速开始 ### 环境要求 - Linux系统 - Docker 和 docker-compose - Windows用户可以使用 WSL (Windows Subsystem for Linux) ### 安装步骤 1. **克隆项目**: ```bash git clone https://gitee.com/thiswind/course_work_hub.git cd course_work_hub ``` 2. **初始化项目**: ```bash ./init-project.sh ``` 3. **编辑学生信息**: ```bash # 编辑生成的CSV文件,替换为真实学生数据 vi 移动应用软件开发实训-学号-姓名.csv ``` 4. **启动系统**: ```bash docker-compose up -d ``` 5. **访问系统**:http://localhost:25610 ### 管理命令 ```bash # 查看服务状态 ./docker-manage.sh status # 查看运行日志 ./docker-manage.sh logs # 重启服务 ./docker-manage.sh restart # 停止服务 ./docker-manage.sh stop ``` ## 项目结构 ``` course_work_hub/ ├── app.py # Flask主应用 ├── requirements.txt # Python依赖 ├── 移动应用软件开发实训-学号-姓名.csv # 学生信息数据库 ├── templates/ # HTML模板 ├── static/ # 静态文件 ├── uploads/ # 作业存储目录 │ ├── 实验一/ │ ├── 实验二/ │ └── 实验三/ ├── Dockerfile # Docker镜像配置 ├── docker-compose.yml # 容器编排配置 ├── docker-manage.sh # 管理脚本 └── init-project.sh # 项目初始化脚本 ``` ## 认证机制 ### 首次登录 1. 学生输入学号 2. 系统检测为首次登录,要求输入姓名验证身份 3. 验证成功后自动生成16位强密码 4. 密码显示页面提醒学生保存密码 ### 后续登录 - 用户名:学号 - 密码:系统生成的16位强密码 ### 安全特性 - 每个学生独立密码,防止互相干扰 - 密码包含大小写字母和数字,安全性高 - 防止恶意修改他人作业 ## 文件命名规则 上传的作业文件将自动重命名为:`实验X-学号-姓名.pdf` 示例: - `实验一-2023XXXXXX-张同学.pdf` - `实验二-2023XXXXXX-李同学.pdf` - `实验三-2023XXXXXX-王同学.pdf` ## 重要提醒 ### 🔒 数据安全 - 学生信息CSV文件和uploads目录已被.gitignore排除,不会推送到远程仓库 - 请妥善保管学生真实信息,不要将其提交到版本控制系统 - 首次部署时必须运行 `./init-project.sh` 创建必需的文件和目录 ### ⚙️ 技术规格 - 运行端口:25610 - 文件大小限制:16MB - 支持文件格式:仅PDF - 基于Docker容器化部署,确保环境一致性 ## Windows用户 Windows用户请使用WSL (Windows Subsystem for Linux): 1. 安装WSL:在PowerShell(管理员模式)中运行 `wsl --install` 2. 重启计算机并安装Ubuntu 3. 在WSL环境中按照上述Linux步骤操作 ## 许可证 本项目基于 GPL v2 许可证开源。