Flask_SQLAlchemy是Flask的一个第三方组件,封装了SQLAlchemy。SQLAlchemy是一个强大的关系型数据库框架,支持多种数据库连接。SQLAlchemy提供了高级ORM接口外,还支持数据库原生SQL。
一、安装:
pip install flask-sqlalchemy
二、链接
数据库引擎 | URL |
---|---|
MySQL | mysql://username:password@hostname/database |
Postgres | postgresql://username:password@hostname/database |
SQLite(Linux,macOS) | sqlite:absolute/path/to/database |
SQLite(Windows) | sqlite:c:/absolute/path/to/database |
SQLite没有服务器,仅仅是一个文件,构建很简单,语法跟MySQL基本不差什么,所以作为实验用很合适。
三、项目中配置
from flask_sqlalchemy import SQLAlchemy
basedir = os.path.abspath(os.path.dirname(__file__))
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'data.sqlite')
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
应用的数据库连接必须配置在SQLALCHEMY_DATABASE_URI键中,同时需要把SQLALCHEMY_TRACK_MODIFICATIONS键设为False,目的是为了不需要跟踪对象变化时降低内存消耗。db是SQLAlchemy类的实例,表示应用使用的数据库,之后所有的操作从db展开。