Python flask框架实现查询数据库并显示数据
介绍
Python的Flask框架是一种用于构建Web应用程序的微型框架,它具有简单、灵活、易学易用的特点。在本文中,我们将学习如何使用Flask框架来查询数据库并显示数据。我们将在项目中使用SQLite数据库,并使用SQLAlchemy作为ORM(对象关系映射)工具。
设置
首先,我们需要安装Flask及其相关扩展库。在命令行中运行以下命令来安装所需的库:
pip install flask
pip install flask_sqlalchemy
创建Flask应用
首先,我们需要创建一个Flask应用并设置基本配置。在你的项目目录中,创建一个名为app.py的Python文件,并在其中编写以下代码:
from flask import Flask
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
这段代码创建了一个名为app的Flask应用,并配置了一个SQLite数据库的URI。我们还禁用了对数据库模型的自动跟踪修改。
创建数据库模型
接下来,我们需要创建一个数据库模型来定义我们的数据表。在app.py文件中添加以下代码:
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), nullable=False)
email = db.Column(db.String(120), nullable=False)
def __repr__(self):
return f""
上面的代码中,我们创建了一个User类,并使用db.Column定义了id、username和email属性。我们还实现了__repr__方法来方便地打印用户对象。
创建数据库
由于我们使用的是SQLite数据库,我们可以使用以下命令来创建数据库文件和数据表:
$ python
>>> from app import db
>>> db.create_all()
>>> exit()
添加数据
现在,我们可以向数据库中添加一些数据。在app.py文件中,添加以下代码:
@app.route('/add_data')
def add_data():
user1 = User(username='Alice', email='alice@gmail.com')
user2 = User(username='Bob', email='bob@gmail.com')
user3 = User(username='Charlie', email='charlie@gmail.com')
db.session.add_all([user1, user2, user3])
db.session.commit()
return 'Data added successfully!'
这段代码定义了一个名为add_data的路由,用于添加数据到数据库。我们创建了三个用户,并使用db.session.add_all方法将它们添加到会话中,最后使用db.session.commit提交到数据库。
查询数据
现在,我们可以编写一个路由来查询数据库中的数据。添加以下代码到app.py文件:
@app.route('/users')
def users():
users = User.query.all()
return f"Users
{''.join([user.username for user in users])}"
这段代码定义了一个名为users的路由,用于查询数据库中的所有用户。我们使用User.query.all()来获取所有用户对象,然后将它们的用户名以字符串的形式返回。
运行应用
最后,我们需要在app.py文件中添加以下代码来运行我们的应用:
if __name__ == "__main__":
app.run()
测试应用
现在,我们可以在命令行中运行app.py文件,并在浏览器中访问http://localhost:5000/add_data来添加数据到数据库。然后访问http://localhost:5000/users来查看数据库中的用户。
总结
在本文中,我们学习了如何使用Flask框架查询数据库并显示数据。我们首先设置了Flask应用的基本配置,然后创建了一个数据库模型来定义数据表。我们还演示了如何向数据库中添加数据,并通过路由来查询数据库中的数据。使用Flask和SQLAlchemy,我们可以轻松地创建和操作数据库,并在Web应用中显示数据。
这是使用Flask框架查询数据库并显示数据的一个基础示例。在实际应用中,您可以根据自己的需求进一步扩展和优化代码。希望这篇文章对您理解和使用Flask框架有所帮助。