Flask 显示数据库表格
Flask是一个轻量级的Python Web框架,可以帮助我们快速搭建Web应用程序。在实际开发中,经常需要与数据库进行交互并展示数据。本文将详细讲解如何使用Flask来显示数据库表格。
准备工作
在开始之前,我们需要安装Flask和相关数据库驱动。
pip install Flask
pip install Flask-SQLAlchemy
创建Flask应用
首先,创建一个新的Flask应用,并初始化一个数据库连接。
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
db = SQLAlchemy(app)
此处我们使用SQLite数据库作为示例,后续可根据实际情况更换为其他数据库。接着,定义一个数据库模型,并创建对应的数据表。
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
def __repr__(self):
return '<User %r>' % self.username
db.create_all()
插入测试数据
为了验证数据表格的显示,我们插入一些测试数据。
user1 = User(username='alice', email='alice@example.com')
user2 = User(username='bob', email='bob@example.com')
db.session.add(user1)
db.session.add(user2)
db.session.commit()
创建路由和模板
接下来,我们创建一个路由来查询数据库并在模板中显示数据。
from flask import render_template
@app.route('/')
def index():
users = User.query.all()
return render_template('index.html', users=users)
然后,创建一个模板index.html
,用于展示数据。
<!DOCTYPE html>
<html>
<head>
<title>Users</title>
</head>
<body>
<h1>User List</h1>
<table>
<tr>
<th>ID</th>
<th>Username</th>
<th>Email</th>
</tr>
{% for user in users %}
<tr>
<td>{{ user.id }}</td>
<td>{{ user.username }}</td>
<td>{{ user.email }}</td>
</tr>
{% endfor %}
</table>
</body>
</html>
运行Flask应用
最后,运行Flask应用并访问首页,即可看到数据库表格中的数据。
export FLASK_APP=app.py
flask run
在浏览器中访问localhost:5000
即可查看显示的数据库表格。
通过上述步骤,我们成功地使用Flask显示了数据库表格。在实际项目中,可以根据需要进一步优化页面布局和样式,以实现更好的用户体验。