项目简介
本系统是基于Flask框架开发的Web应用,主要用于管理学生、课程和考勤信息。学生可登录系统查看课程信息与考勤状态,教师和管理员能设置学生的考勤状态。系统支持本地和远程服务器部署,还提供丰富的API接口供外部调用。
项目的主要特性和功能
- 学生管理:包含学生登录验证、获取学生所选课程、获取学生考勤状态以及设置学生考勤状态。
- 课程管理:可进行课程信息管理和学生选课信息管理。
- 考勤管理:能够管理考勤状态并记录考勤时间。
- 数据库管理:支持数据库初始化(从Excel文件导入数据)和数据库重置(重置考勤记录)。
安装使用步骤
1. 环境准备
安装Python和MySQL
需确保已安装Python 2.7和MySQL数据库。
安装virtualenv
在Windows命令行执行以下命令:
bash
pip install virtualenv
cd <项目目录>
virtualenv venv
venv\Scripts\activate
2. 安装依赖
在虚拟环境中执行以下命令:
bash
pip install -r requirements.txt
特殊依赖安装(MySQL-python)
若无法直接安装MySQL-python,可从驱动下载地址下载相应驱动,再在命令行执行:
bash
pip install MySQL_python-1.2.5-cp27-none-win_amd64.whl
3. 数据库配置
创建数据库
在MySQL命令行执行:
mysql
create database <数据库名字> charset utf8;
初始化数据库
在config.py
中配置数据库连接信息,然后在虚拟环境中执行:
python
python manage.py initserver
4. 运行服务
在虚拟环境中执行以下命令启动Flask服务:
python
python app.py
服务默认在http://127.0.0.1:5000/
上运行。
5. API使用
学生登录
使用POST请求发送登录信息:
bash
curl -H "Content-Type: application/json" -X POST -d '{"stu_id": 2018302110001, "password": "********"}' http://127.0.0.1:5000/api/login
获取学生所选课程
使用GET请求获取课程信息:
bash
curl http://127.0.0.1:5000/api/getcourse?stu_id=2018302110001
获取学生考勤状态
使用GET请求获取考勤状态:
bash
curl http://127.0.0.1:5000/api/getstate?stu_id=2018302110001
设置学生考勤状态
使用POST请求设置考勤状态:
bash
curl -H "Content-Type: application/json" -X POST -d '{"stu_id": 2018302110001, "begin_time": {"hour": 10, "minute": 9, "second": 25}, "duration": 60}' http://127.0.0.1:5000/api/setstate
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】