type
status
date
slug
summary
tags
category
icon
password
最近突发奇想,结合目前大学教师收作业的实际问题,用Fastapi+Bootstrap写了一个简单的作业收发器。
界面展示
系统部署
(确保python环境版本高于3.8,推荐3.12,也推荐使用conda安装)
首先,将项目clone到本地:
git clone https://gitee.com/larryivanhan/job_collector.git
之后,安装依赖环境:
pip install -r requirements.txt
运行程序:
python3 main.py
之后程序就开始运行,可以访问http://localhost:8000/ 使用。
一些说明
- password.txt中存储了密码,通过修改password.txt可以更改密码。默认密码为12345678.
- 任务可以通过markdown文件发布,存储在 task.md
- 收集的作业在jobs文件夹下,上传的附件在task_attachment下
- 如有疑问请发布issues或者联系:larryivanhan@gmail.com
使用指南
教师登录
- 访问登录页面: 打开浏览器,访问 http://localhost:8000/login。
- 输入密码: 在登录表单中输入 password.txt 中配置的密码。
- 登录成功: 登录成功后,将自动跳转到作业列表管理页面 http://localhost:8000/job_list。
- 登录失败: 如果密码错误,页面将显示错误提示,请重新输入。
上传作业要求及附件
- 访问作业列表页面: 登录后,系统会自动跳转到作业列表页面 http://localhost:8000/job_list。
- 上传作业要求: •在“上传新的作业要求”板块,点击“选择新的作业要求”按钮,选择一个 Markdown 文件(.md 格式)。 •作业要求文件会更新 task.md 文件,学生在提交作业时将看到最新的作业要求。
- 上传附件: •在同一板块中,点击“选择附件”按钮,可以选择多个附件文件(支持 .pdf, .docx, .zip, .rar, .txt, .md 格式)。 •上传的附件将存储在 task_attachments/ 目录下,学生可在提交作业页面下载查看。
- 提交上传: •确认选择的文件后,点击“上传”按钮。 •上传过程中将显示进度条,上传完成后会显示成功提示。
管理学生提交的作业
- 查看作业列表: •在“学生提交的作业”板块,系统将列出所有学生提交的作业文件,支持分页显示。
- 搜索作业: •使用搜索框输入作业文件名的一部分,点击“搜索”按钮,系统将过滤显示符合条件的作业。
- 分页浏览: •使用分页控件浏览不同页的作业列表。
- 下载作业: •点击对应作业文件旁的“下载”按钮,系统将下载该作业文件。
- 删除作业: •点击“删除”按钮,系统将弹出删除确认模态框,确认后删除对应的作业文件。 •删除过程中按钮将被禁用,防止重复点击。
- 批量下载作业: •点击“批量下载作业”按钮,系统将生成所有作业文件的 ZIP 压缩包并下载。
学生提交作业
- 访问提交页面: 打开浏览器,访问 http://localhost:8000/send_job。
- 查看作业要求和附件: •页面顶部将显示最新的作业要求内容。 •附件下载链接可供学生下载查看。
- 填写提交表单: •姓名:输入学生的姓名(必填)。 •学号:输入学生的学号(必填)。 •附注:可选,填写额外备注信息。 •选择文件:点击“选择文件”按钮,上传作业文件(支持 .pdf, .docx, .zip, .rar, .txt, .md 格式,最大 10 MB)。
- 提交作业: •填写完毕后,点击“提交”按钮。 •上传过程中将显示进度条,上传完成后会显示成功提示,并清空表单。
- 提交失败: •如果上传失败,系统将显示错误提示,请检查文件格式和大小后重新提交。
- 作者:Larry
- 链接:https://www.larryivanhan.blog/article/job_collector
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。