本次搭建使用Python+Flask+SQLite技术栈,无需安装额外数据库,所有工具免费,零基础可直接操作。
直接从官方地址下载对应系统的安装包:https://www.python.org/downloads/
安装时必须勾选「Add Python to PATH」选项,否则后续运行会报错,勾选后点击默认安装即可完成。
安装完成后,按下Win+R输入cmd打开命令提示符,直接执行以下命令安装所需依赖:
``` pip install flask flask-sqlalchemy ```
若下载速度慢可替换为清华源命令,直接执行:

``` pip install flask flask-sqlalchemy -i https://pypi.tuna.tsinghua.edu.cn/simple ```
在本地新建一个空文件夹,命名为student_manage,按照以下结构新建文件夹和文件:
注意:templates文件夹名称不能写错,否则Flask无法找到页面文件,这是最容易出错的步骤。
打开根目录下的app.py,直接复制以下完整代码,无需修改任何内容即可使用:
```
from flask import Flask, render_template, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
import os
app = Flask(__name__)
配置数据库路径
basedir = os.path.abspath(os.path.dirname(__file__))
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'instance', 'student.db')
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
学籍数据模型
class Student(db.Model):
id = db.Column(db.Integer, primary_key=True)
student_id = db.Column(db.String(20), unique=True, nullable=False)
name = db.Column(db.String(20), nullable=False)
class_name = db.Column(db.String(50), nullable=False)
major = db.Column(db.String(50), nullable=False)
enroll_date = db.Column(db.String(10), nullable=False)
创建数据库表
with app.app_context():
os.makedirs(os.path.join(basedir, 'instance'), exist_ok=True)
db.create_all()
首页,展示所有学籍信息
@app.route('/')
def index():
keyword = request.args.get('keyword', '')
if keyword:
students = Student.query.filter(
(Student.student_id.contains(keyword)) | (Student.name.contains(keyword))
).all()
else:
students = Student.query.all()
return render_template('index.html', students=students)
新增/修改学籍
@app.route('/edit', methods=['POST'])
def edit():
student_id = request.form.get('student_id')
id = request.form.get('id')
name = request.form.get('name')
class_name = request.form.get('class_name')
major = request.form.get('major')
enroll_date = request.form.get('enroll_date')
if id: 修改操作
student = Student.query.get(int(id))
student.student_id = student_id
student.name = name
student.class_name = class_name
student.major = major
student.enroll_date = enroll_date
else: 新增操作
student = Student(
student_id=student_id,
name=name,
class_name=class_name,
major=major,
enroll_date=enroll_date
)
db.session.add(student)
db.session.commit()
return redirect(url_for('index'))
删除学籍
@app.route('/delete/')
def delete(id):
student = Student.query.get(id)
db.session.delete(student)
db.session.commit()
return redirect(url_for('index'))
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0')
```
打开templates文件夹下的index.html,复制以下完整代码,直接保存即可:
```学生学籍档案管理 ```
cd D:\student_manage回车python app.py回车看到命令行输出「 Running on http://127.0.0.1:5000」就是启动成功了,打开浏览器输入这个地址就能进入管理系统。
app.run(debug=True, host='0.0.0.0')改成app.run(debug=True, host='0.0.0.0', port=5001),重启后访问http://127.0.0.1:5001即可。本管理软件已经包含学籍新增、修改、删除、按关键词搜索核心功能,所有数据自动保存在本地SQLite数据库中,不会丢失,完全满足中小学校、培训机构的日常学籍管理需求,按照步骤操作即可零成本落地使用。
档案整理行业认证,这玩意儿到底是不是你的职场“硬通货”?