Python Flask 和数据库系统交互

Python Flask 和数据库系统交互

Python Flask 和数据库系统交互

全栈网页应用程序需要结构化数据的持久性,因此使用数据库的知识和经验是网页开发的先决条件。Python 和Flask 可以与大多数SQL或无SQL数据库系统集成。Python本身附带了一个名为sqlite3的轻量级SQLite数据库。我们将使用SQLite,因为它不需要设置单独的数据库服务器,并且非常适合小规模应用程序。对于生产环境,我们必须使用其他数据库系统,如MySQL、MariaDB或PostgreSQL。为了访问数据库系统并与之交互,我们将使用Flask扩展之一FlaskSQLAlchemy。Flask-SQLAlchemy扩展基于Python的SQLAlchemy库,使该库可用于我们的网页应用程序。SQLAlchemy库提供了一个对象关系映射器(ORM),这意味着它将我们的数据库表映射到Python对象。ORM库的使用不仅加快了开发周期,而且提供了在不更改代码的情况下切换底层数据库系统的灵活性。因此,我们建议使用 SQLAlchemy 或类似的库来处理数据库系统。

要从我们的应用程序与任何数据库系统交互,我们需要像往常一样创建Flask应用程序实例。下一步是使用数据库位置的URL(在SQLite3的情况下是一个文件)配置应用程序实例。创建应用程序实例后,我们将通过将其传递给应用程序实例来创建 SQLAlchemy 实例。使用 SQLite 等数据库时,我们只需在第一次初始化数据库。它可以从Python程序启动,但我们不赞成这种方法,以避免每次启动应用程序时都重置数据库。建议使用 SQLAlchemy 实例从命令行初始化数据库一次。在代码示例之后,我们将讨论初始化数据库的确切步骤。

为了说明SQLAlchemy库在我们的网页应用程序中的使用,我们将创建一个简单的应用程序来添加、列出和删除数据库表中的学生对象。以下是应用程序的示例代码,用于初始化Flask应用程序和数据库实例(SQLAlchemy实例),以及创建 Student 类的 Model 对象:

# 与数据库交互第一部分:创建和删除列表对象
from flask import Flask, render_template, request, redirect
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///student.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)

class Student(db.Model):
    id 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dowhileprogramming

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值