张教授: 小李,我们医科大学最近需要开发一套学生管理信息系统,你觉得从哪里开始比较好?
小李: 首先,我们需要明确系统的主要功能。比如,记录学生的学籍信息、课程安排、成绩管理等。另外,违纪处分管理也是不可或缺的一部分。
张教授: 对,违纪处分管理很重要。你能给我展示一下基本框架吗?
小李: 当然可以。我们可以使用Python的Flask框架来搭建后端,并且用MySQL作为数据库存储数据。
张教授: 好的,那我们现在就开始吧!首先,创建一个数据库表用于存储违纪处分记录。
小李: 我已经准备好了SQL语句。请看:
CREATE TABLE Discipline (
id INT AUTO_INCREMENT PRIMARY KEY,
student_id VARCHAR(10) NOT NULL,
reason TEXT NOT NULL,
date DATE NOT NULL,
status ENUM('pending', 'approved', 'rejected') DEFAULT 'pending'
);
张教授: 很好!接下来,我们需要编写一些Python代码来处理这些数据。
小李: 下面是添加违纪记录的示例代码:
from flask import Flask, request, jsonify
import mysql.connector
app = Flask(__name__)
@app.route('/add_discipline', methods=['POST'])
def add_discipline():
data = request.get_json()
student_id = data['student_id']
reason = data['reason']
date = data['date']
conn = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="university"
)
cursor = conn.cursor()
query = "INSERT INTO Discipline (student_id, reason, date) VALUES (%s, %s, %s)"
values = (student_id, reason, date)
cursor.execute(query, values)
conn.commit()
return jsonify({"message": "Discipline record added successfully"}), 201
张教授: 这段代码看起来很实用。那么查询违纪记录呢?
小李: 查询违纪记录也很简单。这里是代码示例:
@app.route('/get_discipline/
def get_discipline(student_id):
conn = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="university"
)
cursor = conn.cursor(dictionary=True)
query = "SELECT * FROM Discipline WHERE student_id = %s"
cursor.execute(query, (student_id,))
result = cursor.fetchall()
return jsonify(result), 200
张教授: 太棒了!现在我们的系统已经有了基本的功能,包括添加和查询违纪记录。
小李: 是的,接下来我们可以继续扩展其他功能,如更新状态和删除记录。
张教授: 好的,继续加油!
]]>