python连接数据库的框架_Flask框架如何连接数据库

Flask不能直接连接数据库,需要借助于ORM(Object Relational Mapper)。在这一部分,我们将借助于SQLAlchemy使用Postgres数据库。

安装Flask-SQLAlchemy和Postgres

首先安装flask-sqlalchemy:$ pip install flask-sqlalchemy

然后从官方下载并安装postgres:https://postgresapp.com/

创建数据库

在终端中使用下面的命令创建一个appdb数据库:$ createdb appdb

更新应用配置

修改app.config,添加数据库相关的配置信息:app.config['DEBUG'] = True

app.config['SQLALCHEMY_DATABASE_URI']='postgresql://localhost/appdb'

SQLALCHEMY_TRACK_MODIFICATIONS = True

db = SQLAlchemy(app)

然后在代码中就可以使用这些配置数据了:from flask import Flask, request, render_template

from flask_sqlalchemy import SQLAlchemy

# Settingsapp = Flask(__name__)

app.config['DEBUG'] = Trueapp.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://localhost/appdb'

db = SQLAlchemy(app)@app.route('/')def hello_world():

return 'Hello, World!'if __name__ == '__main__':

app.run()

现在,让我们创建第一个模型(Model)。所有模型的基类是db.Model,使用Column来定义数据列:class Post(db.Model):

id = db.Column(db.Integer(), primary_key=True)

title = db.Column(db.String(80), unique=True)

post_text = db.Column(db.String(255))

def __init__(self, title, post_text):

self.title = title

self.post_text = post_text

在代码中使用模型:from flask import Flask

from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://localhost/testdb'

db = SQLAlchemy(app)

class Post(db.Model):

id = db.Column(db.Integer(), primary_key=True)

title = db.Column(db.String(80), unique=True)

post_text = db.Column(db.String(255))

def __init__(self, title, post_text):

self.title = title

self.post_text = post_text

@app.route('/')

def index():

return "Hello World"

app = Flask(__name__)

if __name__ == "__main__":

app.run()

相关推荐:

你可能感兴趣的:(python连接数据库的框架)