本项目是一款基于Python Flask框架与Bootstrap 4前端技术的学生选课系统,旨在为高校学生提供便捷高效的在线选课服务。
展示网站:首先使用管理员账户登录(账号000,密码admin),创建自己的8位学号,默认密码为admin。然后用自己创建的学号登录选课系统进行体验。
一、Python_Flask初始化:
包括Bootstrap框架、SQLAlchemy的ORM框架以及数据库迁移工具的设置。
二、选课系统关系模型定义
除了基础属性外,还定义了各类之间的一对多和多对多的关系。具体如下:
- 学院:教师 = 1:n(一个学院可以有多个教师)
- 学院:专业 = 1:n(一个学院可以包含多个专业)
- 学院:课程 = 1:n(一个学院可以开设多种课程)
- 专业:学生 = 1:n(一个专业下有多名学生)
- 教师:课程 = m:n(多名教师教授多门课程,每门课可由多位老师授课)
在教师与课程的多对多关系中额外建立一张表来存储具体信息如上课时间、课程容量等。对于涉及三方的复杂关联关系——即教师、学生和课程之间的互动,在数据库设计时会创建专门的关系表以确保数据的一致性和完整性。
三、登录登出模块
用户在进行身份验证时,系统首先会在学生表中查找输入的学号信息;若未找到,则转而在教师表里查询。管理员则通过单独的设计界面来进行登录操作以便于区分不同权限的操作者。
密码校验机制为自定义实现。