怎么在Flask中利用SQLAlchemy对SQLite进行配置

今天就跟大家聊聊有关怎么在Flask中利用SQLAlchemy对SQLite进行配置,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

1、使用 pip 安装 Flask-SQLAlchemy:

$ pip install flask-sqlalchemy

2、接下来,我们配置一个简单的 SQLite 数据库:

$ cat app.py
# -*- coding: utf-8 -*-
 
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
 
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///db/users.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
db = SQLAlchemy(app)
 
 
class User(db.Model):
    """定义数据模型"""
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True)
    email = db.Column(db.String(120), unique=True)
 
    def __init__(self, username, email):
        self.username = username
        self.email = email
 
    def __repr__(self):
        return '<User %r>' % self.username

3、这里有几点需要注意:

(1)app 应用配置项 SQLALCHEMY_DATABASE_URI 指定了 SQLAlchemy 所要操作的数据库,这里我们使用的是 SQLite,数据库 URL 以 sqlite:/// 开头,后面的 db/users.db 表示数据库文件存放在当前目录的 db 子目录中的 users.db 文件。当然,你也可以使用绝对路径,如 /tmp/users.db 等。

(2)db 对象是 SQLAlchemy 类的实例,表示程序使用的数据库。

(3)我们定义的 User 模型必须继承自 db.Model,这里的模型其实就对应着数据库中的表。其中,类变量__tablename__ 定义了在数据库中使用的表名,如果该变量没有被定义,Flask-SQLAlchemy 会使用一个默认名字。

4、接着,我们创建表和数据库。为此,我们先在当前目录创建 db 子目录和新建一个 users.db 文件,然后在交互式 Python shell 中导入 db 对象并调用 SQLAlchemy 类的 create_all() 方法:

$ mkdir db
$ python
>>> from app import db
>>> db.create_all()

看完上述内容,你们对怎么在Flask中利用SQLAlchemy对SQLite进行配置有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。