小明:嘿,小华,我正在尝试构建一个大学教师管理系统,但我不确定从哪里开始。你能帮我吗?
小华:当然可以!我们可以使用Python和Flask来快速搭建这个系统。首先,我们需要安装Flask。
小明:好的,我已经安装了Flask。下一步是什么?
小华:我们接下来要创建一个基本的Flask应用。这是我们的主文件app.py:
from flask import Flask, request, jsonify
app = Flask(__name__)
# 模拟数据库
teachers = [
{"id": 1, "name": "张老师", "department": "计算机科学"},
{"id": 2, "name": "李老师", "department": "电子工程"}
]
@app.route('/teachers', methods=['GET'])
def get_teachers():
return jsonify(teachers)
@app.route('/teachers/
def get_teacher(id):
teacher = next((t for t in teachers if t['id'] == id), None)
if teacher:
return jsonify(teacher)
else:
return jsonify({"error": "教师未找到"}), 404
if __name__ == '__main__':
app.run(debug=True)
]]>
小明:这看起来不错。我们如何添加新的教师呢?
小华:我们可以增加一个POST路由来处理添加教师的信息。让我们更新app.py:
@app.route('/teachers', methods=['POST'])
def add_teacher():
new_teacher = request.get_json()
teachers.append(new_teacher)
return jsonify(new_teacher), 201
]]>
小明:太棒了!现在我可以添加、查看教师信息了。我们还需要考虑如何删除或更新教师信息吗?
小华:是的,我们可以添加PUT和DELETE方法来更新或删除教师信息。这里是如何实现的:
@app.route('/teachers/
def update_teacher(id):
updated_teacher = request.get_json()
for i, t in enumerate(teachers):
if t['id'] == id:
updated_teacher['id'] = id
teachers[i] = updated_teacher
return jsonify(updated_teacher)
return jsonify({"error": "教师未找到"}), 404
@app.route('/teachers/
def delete_teacher(id):
global teachers
teachers = [t for t in teachers if t['id'] != id]
return '', 204
]]>
小明:太感谢你了,我现在可以自己动手试试看这个系统了!