Python 基于 Django 的学生成绩管理系统,可视化界面

2023-10-30

1简介

对于学生成绩管理系统,充分运用现代化的信息技术手段,对于学生成绩信息管理发展的趋势就是信息化,信息化时代下的信息管理,需要深化信息管理体制与手段的改革,充分运用信息化手段来全方位的进行学生成绩管理系统工作,构建学生成绩管理系统,实现学生成绩管理系统信息化,充分运用先进的学生成绩管理系统进行学生成绩的信息管理、个人信息等信息的管理,加强学生成绩管理系统平台的完善性,通过网络资源和信息共享,运用计算机手段,逐步实现学生成绩管理系统的系统化和网络化,对于学生成绩信息管理,只有使用这种网络趋势,才能在时代的车轮中走的更远,发展的更好。

img
在这里插入图片描述

2. 技术栈

Python Django

MySql

HTML,Javascript

3. 功能分析

本系统采用从上往下的步骤开发,基本功能如下:

本课题要求实现一套学生成绩管理系统,系统主要包括管理员,学生和教师三大模块

(a) 管理员;管理员进入系统主要功能包括首页,个人中心,教师管理,学生管理,公告信息管理,课程类型管理,课程信息管理,选课信息管理,成绩信息管理等功能并进行操作。

(b) 教师;教师进入系统主要功能包括首页,个人中心,公告信息管理,课程信息管理,选课信息管理,成绩信息管理等功能并进行操作。

© 学生;学生进入系统主要功能包括首页,个人中心,公告信息管理,课程信息管理,选课信息管理,成绩信息管理等功能并进行操作。

4 系统设计

4.1软件功能模块设计

系统整功能如下图所示:

img

4.2登录注册模块

用户要通过填写自己的账号和密码进入系统,如果用户没有登录的账号需要先进行注册用户在注册页面输入账号和密码,点击注册,按要求输入注册表所要的信息,登录密码和确认密码,点击注册后,系统先判断用户输入的“密码”和“确认密码”是否一致,如果不一致,用户需重新输入;如果一致则注册成功,然后输入刚才注册的个人账号和密码点击“登录”按钮,显示“登录中请稍后”,如果登录信息正确则系统跳转进闲置商品列表界面;如果登录信息错误则显示 “登录失败”登录注册算法流程图如图4.2登录注册流程图所示。

img

Web后台端管理员登入正确可以查看用户修改用户信息,查看订单等操作;如果输入错误,则无反馈重新登录。如所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MPiKA6cq-1682567311427)(null)]

4.3数据库设计

前面系统分析结束后现在进入设计阶段,在这个过程中我们要抽象地分析数据,将数据中的关系理解清楚,然后对概念结构和逻辑结构进行设计。由于MYSQL能够以极高的效率完成各种数据库查询,并能是存储过程更加方便。同时能够使数据库管理和系统管理更加清晰便捷。另外,系统以Web技术支持,使用户能够轻易地发布数据到Web页面上。所以本系统采用了MYSQL进行数据库的存储管理与维护。

表4-1:成绩信息

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
xuehao varchar 200 学号
xueshengxingming varchar 200 学生姓名
chengji varchar 200 成绩
fabushijian datetime 发布时间
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名

表4-2:学生

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xuehao varchar 200 学号
mima varchar 200 密码
xueshengxingming varchar 200 学生姓名
xingbie varchar 200 性别
banji varchar 200 班级
zhuanye varchar 200 专业
shouji varchar 200 手机
touxiang varchar 200 头像

表4-3:选课信息

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
kechengleixing varchar 200 课程类型
kaikeriqi varchar 200 开课日期
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名
xuankeshijian datetime 选课时间
xuehao varchar 200 学号
xueshengxingming varchar 200 学生姓名
zhuanye varchar 200 专业
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复

表4-4:用户表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-5:课程信息

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
kechengleixing varchar 200 课程类型
kaikeriqi date 开课日期
shangkedidian varchar 200 上课地点
kechengjieshao longtext 4294967295 课程介绍
gonghao varchar 200 工号
jiaoshixingming varchar 200 教师姓名

表4-6:课程类型

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengleixing varchar 200 课程类型

5系统实现

系统登录,用户进入系统前在登录页面根据要求填写用户名和密码,选择角色等信息,点击登录进行登录操作,如图5-1所示。

img

5.1管理员功能模块

管理员登录系统后,可以对首页,个人中心,教师管理,学生管理,公告信息管理,课程类型管理,课程信息管理,选课信息管理,成绩信息管理等功能进行相应的操作管理,如图5-2所示。

img

教师管理,在教师管理页面可以对索引,工号,教师姓名,性别,年龄,职称,电话,头像等内容进行详情,修改和删除等操作,如图5-3所示。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5WkA5WB2-1682567311479)(null)]

学生管理,在学生管理页面可以对索引,学号,学生姓名,性别,班级,专业,手机,头像等信息进行详情,修改和删除等操作,如图5-4所示。

img

公告信息管理,在公告信息管理页面可以对索引,标题,类型,发布时间等内容进行详情、修改和删除等操作,如图5-5所示。

img

课程类型管理,在课程类型管理页面可以对索引,课程类型等内容进行修改和删除等操作,如图5-6所示。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nym1xaKl-1682567311442)(null)]

课程信息管理,在课程信息管理页面可以对索引,课程名称,课程类型,开课时间,上班地点,工号,教师姓名等内容进行详情,修改和删除等操作,如图5-7所示。

img

选课信息管理,在选课信息管理页面可以对索引,课程名称,课程类型,开课时间,工号,教师姓名,选课时间,学号,姓名,专业,审核回复,审核状态等内容进行详情,修改和删除等操作,如图5-8所示。

img

成绩信息管理,在成绩信息管理页面可以对索引,课程名称,学号,学生姓名,成绩,发布时间,工号,教师姓名等内容进行详情,修改和删除等操作,如图5-9所示。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 基于 Django 的学生成绩管理系统,可视化界面 的相关文章

  • 如何逐行替换(更新)文件中的文本

    我试图通过读取每一行 测试它 然后写入是否需要更新来替换文本文件中的文本 我不想保存为新文件 因为我的脚本已经先备份文件并对备份进行操作 这是我到目前为止所拥有的 我从 os walk 获取路径 并且保证 pathmatch var 正确返
  • 将元组列表转换为字符串 Python

    例如 我用 python 编写了一个返回列表的函数 1 1 2 2 3 3 但我希望输出为字符串 这样我就可以用另一个字符替换逗号 这样输出就是 1 1 2 2 3 3 有什么简单的方法可以解决这个问题吗 感谢您提前提供任何提示 这看起来像
  • Pandas cut 方法不包括下限

    我正在尝试对包含 0 到 100 范围内的年龄的数据帧列进行分箱 当我尝试使用垃圾箱来包含零年龄时 它不起作用 这是一个使用包含我的数据范围的列表的演示 pd cut pd Series range 101 0 24 49 74 100 范
  • 简单 CAE 的问题

    看起来简单的 CAE 不适用于 Carvana 数据集 我正在尝试对 Carvana 数据集进行简单的 CAE 你可以下载它here https www kaggle com c carvana image masking challeng
  • Python textwrap.wrap 导致 \n 问题

    所以我只是重新格式化了一堆代码以合并textwrap wrap 却发现我所有的 n都消失了 这是一个例子 from textwrap import wrap def wrapAndPrint msg width 25 wrap msg to
  • Web 应用程序框架:C++ 与 Python

    作为一名程序员 我熟悉 Python 和 C 我正在考虑编写自己的简单 Web 应用程序 并且想知道哪种语言更适合服务器端 Web 开发 我正在寻找一些东西 它必须是直观的 我认识到 Wt 存在并且它遵循 Qt 的模型 我讨厌 Qt 的一件
  • 提取二值图像中的最中心区域

    我正在处理二进制图像 之前使用此代码来查找二进制图像中的最大区域 Use the hue value to convert to binary thresh 20 thresh thresh img cv2 threshold h thre
  • Odoo:如何覆盖原始功能

    在 Odoo 中 每次打开产品表单时都会计算产品的数量 这发生在模型中product product gt function product available 该函数返回一个名为 res 的字典 Example res 8 qty ava
  • 在 Django admin 中保存包含非 ASCII 字符的 ImageField 时出现 UnicodeEncodeError

    我试图在 django admin inlines 中上传图像文件 并在尝试上传文件名包含非 ascii 字符的文件时收到 UnicodeEncodeError File usr local lib python2 6 site packa
  • 并行磁盘 I/O

    我有几个想要阅读的日志文件 不失一般性 假设日志文件处理如下 def process infilepath answer 0 with open infilepath as infile for line in infile if line
  • Python 宏:用例?

    如果 Python 有一个类似于 Lisp Scheme 的宏工具 比如元Python https code google com p metapython 你会如何使用它 如果您是一名 Lisp Scheme 程序员 您会使用宏来做什么
  • Django - 从时间戳获取不同的日期

    我正在尝试按日期过滤用户 但直到我可以找到数据库中用户的第一个和最后一个日期为止 虽然我可以让我的脚本稍后过滤掉重复项 但我想从一开始就使用 Django 来完成此操作distinct因为它显着减少 我试过 User objects val
  • 从 Cython 代码生成 SIMD 指令

    我需要概述在高性能数字代码中使用 Cython 可以获得的性能 我感兴趣的事情之一是找出优化的 C 编译器是否可以对 Cython 生成的代码进行矢量化 所以我决定写下面的小例子 import numpy as np cimport num
  • Django - 如何从中间件修改模板上下文

    我正在创建一个 Django 中间件 它通过会话管理 购物车 我能够成功修改会话数据 如下所示 class ShoppingCartMiddleware def init self get response self get respons
  • 如何使 cx-oracle 将查询结果绑定到字典而不是元组?

    这是我的代码 我想找到一种方法将查询结果作为字典列表而不是元组列表返回 看起来 cx oracle 通过部分文档讨论 绑定 来支持这一点 虽然我不知道它是如何工作的 def connect dsn cx Oracle makedsn hos
  • 类型错误:不可散列的类型:pandas 的“切片”

    我有一个 pandas 数据结构 我这样创建 test inputs pd read csv input test csv delimiter 它的形状 print test inputs shape is this 28000 784 我
  • 添加条件计数器:基于其他列的值的计数器列

    我有一张这样的桌子 id id2 val a red apple a red orange b blue fish c violet beef a yellow banana a black pork 我想根据 id 和 id2 的值创建一
  • 写入文件的正确方法?

    我想知道这样做是否有什么区别 var1 open filename w write Hello world 并做 var1 open filename w var1 write Hello world var1 close 我发现没有必要
  • Django Python - LDAP 身份验证

    我目前正在研究 Django Python 我的目标是从 Ldap 目录对用户进行身份验证 我确实有 python 代码来访问 ldap 目录并检索信息 Code import ldap try l ldap open ldap forum
  • 如何在 django 表单声明中设置标签的 css 类?

    我正在使用 django uniform 并使用一些统一的功能 我正在寻找一种直接从表单声明添加 css 类的方法 对于独立小部件 作为奖励 这里是我的可重复使用的只读自制混合片段 from django import forms def

随机推荐

  • Verilog基础知识0(`define、parameter、localparam三者的区别及举例)

    1 概述 define 作用 gt 常用于定义常量可以跨模块 跨文件 范围 gt 整个工程 parameter 作用 gt 常用于模块间参数传递 范围 gt 本module内有效的定义 localparam 作用 gt 常用于状态机的参数定
  • -bash: cd: /.ssh: 没有那个文件或目录

    解决方法
  • 红宝书第一章总结

    一个完整的JavaScript实现由下列三个不同的部分组成 核心 ECMAScript 文档对象模型 DOM 浏览器对象模型 BOM JavaScript ECMAScript DOM BOM
  • keepalived学习记录:对其vip漂移过程采用gdb跟踪

    对其vip漂移过程采用gdb跟踪 keepalived工具 主要功能 产生vip漂移过程两种情况 gdb调试常用命令 gdb调试时打到的函数栈 供学习参考 系列文章 keepalived学习记录 对其vip漂移过程采用gdb跟踪 Keepa
  • Akka 实践(二)- java开发demo1

    下面就Akka的一个java demo来说明Akka 如何运作的 1 首先下载 Akka的官方包 下载地址为 http akka io downloads 我下载的是 Akka的2 3 15 解压这个压缩包 准备拷贝相关的jar包到自己的工
  • poj 1953 dp(无连续1的01串个数)

    题意 问长度为n的无连续1出现的01串有多少个 思路 简单dp 思路1 dp i 0 表示以0结尾长度为i的串的个数 dp i 1 表示以1结尾长度为i的串的个数 则转移方程为dp i 0 dp i 1 0 dp i 1 1 和dp i 1
  • 算数基本定理求约数个数

    题目 最多约数问题 正整数x 的约数是能整除x的正整数 其约数的个数记为div x 例如div 10 4 设a 和b 是两个正整数 找出a 和b 之间约数个数最多的数x 的约数个数 样例输入 1 36 样例输出 9 算数基本定理 又称为正整
  • 自动化接口测试-第02天-接口用例设计思路、单接口用例、业务场景用例、postman

    更多功能测试以及全套学习路线图均在专栏 戳进去领取 系列文章目录 身为开发必知必会的Linux Linux远程连接 命令的使用 Linux命令大全 唯一以案例详解文 持续更新中 Linux命令大全以及数据库 唯一以案例详解文 已完结 Web
  • yield和join方法的使用。

    join方法用线程对象调用 如果在一个线程A中调用另一个线程B的join方法 线程A将会等待线程B执行完毕后再执行 yield可以直接用Thread类调用 yield让出CPU执行权给同等级的线程 如果没有相同级别的线程在等待CPU的执行权
  • 【笔记】sass

    sass入门 1 可以定义变量 2 嵌套 3 导入其他sass文件 最后编译为一个CSS文件 4 mixin定义一些代码片段 且可传参数 include 5 extend组合代码声明 6 运算 7 颜色函数color darken link
  • 存储卡的使用方法大全

    存储卡的使用方法大全 现在购买诺基亚手机 尤其是其智能手机的朋友是越来越多了 与其他品牌的机型相比 诺基亚的手机有一个最大的优点 就是支持储存卡内存扩充的机型比较多 这让大家在使用中不必再担心手机容量的问题 这也体现了诺基亚 科技以人为本
  • 关于 ubuntu18.04 机械革命 RTX2060 解决分屏显示问题

    本人小白 如有错漏 欢迎批评指正 同时感谢之前发表过以及以后会在CSDN上发表自己学习经验的同志们 问题背景 本人使用的是 机械革命笔记本电脑 安装双系统 win10 以及 ubuntu18 04 在使用过程中 遇到了 分屏黑屏 将鼠标移动
  • NAT穿透的工作原理

    一 引言 1 1 背景 IPv4地址短缺 引入NAT 全球IPv4地址早已不够用 因此人们发明了NAT 网络地址转换 来缓解这个问题 简单来说 大部分机器都使用私有IP地址 如果它们需要访问公网服务 那么 出向流量 需要经过一台NAT设备
  • Pytest+Unittest+Git+Jenkins企业级CICD自动化测试平台建设方案

    随着持续集成的引入 项目中的自动化测试用例越来越多 每轮执行所消耗的时间也越来越久 要提高自动化测试用例执行的效率 以下几点是需要考虑的根本点 1 公司项目的交付策略如何 首先 测试团队服务于公司项目 因此我们必须根据公司项目的交付策略做对
  • SSL证书有什么用?

    SSL证书提供了一种在互联网上身份验证的方式 是用来标识和证明双方身份的数字信息文件 使用SSL证书的网站 可以保证用户和服务器间信息交换的保密性具有不可窃听 不可更改 不可否认 不可冒充的功能 45 113 203 1 45 113 20
  • 怎么用EF框架进行增删改查

    EF框架 1 EF是什么 2 EF的框架模式 3 EF框架优缺点 4 进行增删改查 4 1 新增 4 1 1 直接新增 4 1 2 改变状态新增 4 1 3 批量新增 4 2 删除 4 2 1 删除 先查询后删除 删除ID为6的 4 2 2
  • java jsch_java 利用jsch端口转发 建立连接

    其他代码都一样 参照 使用JSch完成 ssh隧道建立 只有获取连接的部分不相同 代码如下 端口转发 链接两层 public boolean connect throws JSchException try session ssh getS
  • Android NDK C++开发注意事项总结

    相信Android开发者都喜欢用C 编写一些高效的应用 有关Android NDK的C 开发相关知识总结如下 从Android NDK r5开始支持了STL Port 在这个版本开始就可以使用部分STL库的功能了 比如说vector str
  • thumbnailator压缩图片并存至Excel单元格代码

    文章目录 依赖 压缩图片工具类 存至excel的转化器 Excel导入导出的数据类 将数据库实体转化为excel实体 依赖
  • Python 基于 Django 的学生成绩管理系统,可视化界面

    1简介 对于学生成绩管理系统 充分运用现代化的信息技术手段 对于学生成绩信息管理发展的趋势就是信息化 信息化时代下的信息管理 需要深化信息管理体制与手段的改革 充分运用信息化手段来全方位的进行学生成绩管理系统工作 构建学生成绩管理系统 实现