小明:最近我在研究招生管理系统,听说厦门的一些学校也在用类似的系统?
小李:是的,很多学校都开始用信息化手段来管理招生信息。你有兴趣试试看自己做一个吗?
小明:当然想!但我对技术不太熟悉,你能教我吗?
小李:没问题。我们可以用Python来开发一个简单的招生管理系统,使用Flask框架和SQLite数据库。

小明:那具体怎么操作呢?
小李:首先,我们需要安装Flask。可以用pip install flask命令。
小明:然后呢?
小李:创建一个app.py文件,写入以下代码:
from flask import Flask, render_template, request, redirect, url_for
import sqlite3
app = Flask(__name__)
# 创建数据库
def init_db():
conn = sqlite3.connect('school.db')
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS students
(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER, city TEXT)''')
conn.commit()
conn.close()
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
name = request.form['name']
age = request.form['age']
city = requestform['city']
conn = sqlite3.connect('school.db')
c = conn.cursor()
c.execute("INSERT INTO students (name, age, city) VALUES (?, ?, ?)", (name, age, city))
conn.commit()
conn.close()
return redirect(url_for('index'))
else:
conn = sqlite3.connect('school.db')
c = conn.cursor()
c.execute("SELECT * FROM students")
data = c.fetchall()
conn.close()
return render_template('index.html', students=data)
if __name__ == '__main__':
init_db()
app.run(debug=True)
小明:这个代码看起来不错,但需要模板文件对吧?
小李:没错,我们还需要在templates文件夹中创建一个index.html文件,内容如下:
<html>
<head><title>厦门招生系统</title></head>
<body>
<h1>厦门招生管理系统</h1>
<form method="post">
姓名: <input type="text" name="name"><br>
年龄: <input type="number" name="age"><br>
城市: <input type="text" name="city"><br>
<input type="submit" value="提交">
</form>
<h2>学生列表</h2>
<ul>
{% for student in students %}
<li>{{ student[1] }} - {{ student[2] }}岁 - {{ student[3] }}</li>
{% endfor %}
</ul>
</body>
</html>
小明:太好了,这样我就有一个简单的招生管理系统了!
小李:没错,这只是基础版本,后续可以加入更多功能,比如查询、修改、删除等。
