基于web的驾校管理系统代码
时间: 2023-08-21 12:06:24 浏览: 41
以下是一个简单的基于 Web 的驾校管理系统的代码示例,使用 Python Flask 框架和 SQLite 数据库:
```python
from flask import Flask, render_template, request, redirect, url_for, flash
import sqlite3
app = Flask(__name__)
app.secret_key = 'your_secret_key'
# 连接数据库
def get_db():
db = sqlite3.connect('driving_school.db')
db.row_factory = sqlite3.Row
return db
# 关闭数据库
@app.teardown_appcontext
def close_db(error):
if hasattr(g, 'sqlite_db'):
g.sqlite_db.close()
# 首页
@app.route('/')
def index():
return render_template('index.html')
# 学员列表
@app.route('/students')
def students():
db = get_db()
students = db.execute('SELECT * FROM students').fetchall()
return render_template('students.html', students=students)
# 添加学员
@app.route('/add_student', methods=['GET', 'POST'])
def add_student():
if request.method == 'POST':
name = request.form['name']
phone = request.form['phone']
db = get_db()
db.execute('INSERT INTO students (name, phone) VALUES (?, ?)', (name, phone))
db.commit()
flash('学员添加成功')
return redirect(url_for('students'))
else:
return render_template('add_student.html')
# 编辑学员
@app.route('/edit_student/<int:id>', methods=['GET', 'POST'])
def edit_student(id):
db = get_db()
student = db.execute('SELECT * FROM students WHERE id = ?', (id,)).fetchone()
if request.method == 'POST':
name = request.form['name']
phone = request.form['phone']
db.execute('UPDATE students SET name = ?, phone = ? WHERE id = ?', (name, phone, id))
db.commit()
flash('学员信息更新成功')
return redirect(url_for('students'))
else:
return render_template('edit_student.html', student=student)
# 删除学员
@app.route('/delete_student/<int:id>', methods=['POST'])
def delete_student(id):
db = get_db()
db.execute('DELETE FROM students WHERE id = ?', (id,))
db.commit()
flash('学员删除成功')
return redirect(url_for('students'))
if __name__ == '__main__':
app.run(debug=True)
```
这个示例中,驾校管理系统包括一个首页和三个页面:学员列表、添加学员、编辑学员。其中学员列表页面显示所有学员的姓名和电话号码,可以添加、编辑和删除学员。添加学员页面包括一个表单,需要输入姓名和电话号码。编辑学员页面也包括一个表单,可以更新学员的姓名和电话号码。在每个页面中都使用了 Flask 的模板引擎来渲染 HTML 页面,同时也使用了 Flask 的闪现消息来显示成功或失败的操作消息。