首页 > 数据库 >Flask学生信息管理系统,前后端分离(附完整源码+数据库)

Flask学生信息管理系统,前后端分离(附完整源码+数据库)

时间:2022-12-12 21:37:15浏览次数:74  
标签:Flask 数据库 cursor connection 源码 student msg 信息管理系统


文章目录

  • ​​一、演示​​
  • ​​二、Flask基础​​
  • ​​三、项目设计​​
  • ​​3.1 数据库设计​​
  • ​​3.2页面设计​​
  • ​​3.3 涉及技术​​
  • ​​3.4 页面截图​​
  • ​​四、程序​​
  • ​​4.1 主程序源码​​
  • ​​4.2 完整源码​​
  • ​​五、声明​​

一、演示

计算机作业:flask学生信息管理系统,前后端分离

更加详细青岛b站查看:​​学生信息管理系统​

二、Flask基础

即使你对Flask不熟悉,希望你要掌握基础,才能修改和看懂一个项目,本专栏有讲解过Flask基础,这里便不说了,自己去看:

  1. 第一篇:​​环境搭建+配置+URL与试图之间的映射+重定向+数据库连接​​
  2. 第二篇:​​模板渲染+模板过滤使用+控制语句​​

三、项目设计

  • 使用sqlite3数据库,原因:不需要配置,不需要安装和管理;不需要一个单独的服务器进程或操作的系统(无服务器的);一个完整的SQLite数据库存储在一个单一的跨平台的磁盘文件上
  • 使用web框架Flask,原因:入门简单;轻量级框架(我也就学了一天)

3.1 数据库设计

构思比较简单,用一张表存储信息:

Flask学生信息管理系统,前后端分离(附完整源码+数据库)_html


:本人使用数据库可视化工具:navicat

3.2页面设计

把一个网站分为多个页面,这样便于管理,本人把所有页面分别设置如下几个功能:

  • 添加学生信息
  • 删除学生信息
  • 具体信息删除
  • 保存信息
  • 首页

3.3 涉及技术

  • python 基础
  • Flask 框架
  • sqlite3数据库增删改查基础
  • HTML,CSS,JS前端三件套

相关技术不懂的自行查询资料,学起来很容易,学习方法很重要,Flask框架我也就学了一天,大学生拿出自己的智慧,要么就交税。

3.4 页面截图

首页:

Flask学生信息管理系统,前后端分离(附完整源码+数据库)_数据库_02

添加学生:

Flask学生信息管理系统,前后端分离(附完整源码+数据库)_html_03


删除学生:

Flask学生信息管理系统,前后端分离(附完整源码+数据库)_html_04


查看学生信息:

Flask学生信息管理系统,前后端分离(附完整源码+数据库)_sqlite_05

四、程序

4.1 主程序源码

from flask import *
import sqlite3
app = Flask(__name__)

@app.route("/")
def index():
return render_template("index.html")

@app.route("/add_student")
def add_student():
return render_template("add_student.html")

@app.route("/saverecord",methods = ["POST","GET"])
def saveRecord():
msg = "msg"
if request.method == "POST":
try:
name = request.form["name"]
email = request.form["email"]
gender = request.form["gender"]
contact = request.form["contact"]
dob = request.form["dob"]
address = request.form["address"]
with sqlite3.connect("student_detials.db") as connection:
cursor = connection.cursor()
cursor.execute("INSERT into Student_Info (name, email, gender, contact, dob, address) values (?,?,?,?,?,?)",(name, email, gender, contact, dob, address))
connection.commit()
msg = "学生信息添加成功"
except:
connection.rollback()
msg = "不能把该学生信息添加到数据库"
finally:
return render_template("success_record.html",msg = msg)
connection.close()



@app.route("/delete_student")
def delete_student():
return render_template("delete_student.html")



@app.route("/student_info")
def student_info():
connection = sqlite3.connect("student_detials.db")
connection.row_factory = sqlite3.Row
cursor = connection.cursor()
cursor.execute("select * from Student_Info")
rows = cursor.fetchall()
return render_template("student_info.html",rows = rows)



@app.route("/deleterecord",methods = ["POST"])
def deleterecord():
id = request.form["id"]
with sqlite3.connect("student_detials.db") as connection:

cursor = connection.cursor()
cursor.execute("select * from Student_Info where id=?", (id,))
rows = cursor.fetchall()
if not rows == []:

cursor.execute("delete from Student_Info where id = ?",(id,))
msg = "学生信息成功删除"
return render_template("delete_record.html", msg=msg)

else:
msg = "该信息不能被删除"
return render_template("delete_record.html", msg=msg)



if __name__ == "__main__":
app.run(debug = True)

4.2 完整源码

文件比较多,就不放到付费资源了,可以通过以下方式添加我送你,或者以上b站评论区获取,放有获取方式。安装好相关模块,即可自己运行完整项目,这就是为什么选择使用sqlite3数据库,而不是mysql原因,不需要大家再去搭建数据库环境。

三连以上的视频,加我微信:hxgsrubxjogxeeag,备注:CSDN,否则不同意。给我看三连截图。

五、声明

本项目为个人的一个小作业,前路还长,且行且努力,加油!希望本项目的简单设计对你有所帮助,切勿直接抄袭提交作业。欢迎你与我交流。



标签:Flask,数据库,cursor,connection,源码,student,msg,信息管理系统
From: https://blog.51cto.com/u_15677788/5931861

相关文章