小明:嘿,小李,我最近想开发一个校园宿舍管理系统,听说可以用开源技术,你能帮我吗?
小李:当然可以!我们可以使用Python和Flask框架来快速搭建系统。首先,我们需要定义数据库结构。
小明:好的,那我们先创建一个简单的数据库表来存储学生信息吧。
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class Student(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50), nullable=False)
room_number = db.Column(db.String(10), nullable=False)
]]>
小李:这段代码定义了一个Student模型类,用于映射数据库中的students表。
小明:明白了,接下来我们怎么初始化这个数据库呢?
if __name__ == '__main__':
db.create_all()
]]>
小李:运行这段脚本后,会自动在当前目录下生成一个SQLite数据库文件,并创建students表。
小明:太好了!那么现在我们如何添加学生信息到数据库中呢?
def add_student(name, room_number):
new_student = Student(name=name, room_number=room_number)
db.session.add(new_student)
db.session.commit()
]]>
小李:调用add_student函数即可向数据库中插入新记录。
小明:听起来不错,最后我们还需要一个简单的接口来查询这些数据,对吧?
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/students')
def get_students():
students = Student.query.all()
return jsonify([{'id': s.id, 'name': s.name, 'room_number': s.room_number} for s in students])
]]>
小李:没错,这个路由会返回所有学生的JSON格式数据。
小明:太感谢你了,小李!有了这个基础,我可以继续扩展功能了。
小李:不客气,记得多参考开源社区的优秀项目,比如GitHub上的类似项目,这样能学到更多。