flask 读取数据库文章
时间: 2023-05-26 07:06:07 浏览: 156
以下是使用Flask框架读取数据库文章的示例:
1. 首先,安装Flask和数据库驱动程序(如MySQLdb)
```
pip install flask
pip install MySQLdb # 或其他数据库驱动程序,根据需要选择
```
2. 设置数据库连接
```python
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://username:password@localhost/dbname'
db = SQLAlchemy(app)
```
这里使用了SQLAlchemy库来连接数据库,需要在app配置项中设置SQLALCHEMY_DATABASE_URI参数,参数值为数据库连接字符串,格式为“数据库类型://用户名:密码@主机名/数据库名”。
3. 定义文章模型
```python
class Article(db.Model):
__tablename__ = 'articles'
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(100))
content = db.Column(db.String(5000))
```
这里定义了一个Article模型来表示文章,包含id、title和content三个属性。
4. 编写视图函数
```python
@app.route('/articles')
def articles():
articles = Article.query.all()
return render_template('articles.html', articles=articles)
```
这里定义了/articles路由来显示所有文章,通过调用Article.query.all()获取所有文章,然后传递到articles.html模板中显示。可以使用Jinja2模板引擎来渲染模板。
5. 编写模板文件
```
<!doctype html>
<html>
<head>
<title>Articles</title>
</head>
<body>
{% for article in articles %}
<h3>{{ article.title }}</h3>
<p>{{ article.content }}</p>
{% endfor %}
</body>
</html>
```
这里使用了Jinja2模板引擎来渲染模板,使用了{% for %}标签来遍历所有文章,使用{{ }}来显示文章标题和内容。
最后启动Flask应用程序,访问/articles路由即可查看所有文章。
阅读全文