flask-sqlalchemy

本文详细介绍如何在Flask应用中集成SQLAlchemy,包括安装、配置数据库连接、创建模型类、初始化应用、数据库操作等步骤,适用于初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装

pip3 install -i https://pypi.douban.com/simple flask-sqlalchemy

二、使用(文件结构blueprint)

1、__init__.py

# 导入并实例化SQLAlchemy
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()

注意:a.SQLAlchemy的实例化必须在导入蓝图之前

      b.必须导入models.py --->储存ORM类

2、models.py

a.导入db

b.类必须继承db.Model

3、__init__.py中的create_app()方法中初始化

db.init_app(app)

4、在配置文件中配置文件settings.py

SQLALCHEMY_DATABASE_URI = "mysql+pymysql://root:密码@127.0.0.1:3306/数据库?charset=utf8"
SQLALCHEMY_POOL_SIZE = 10
SQLALCHEMY_MAX_OVERFLOW = 5
SQLALCHEMY_TRACK_MODIFICATIONS = False

5、models.py

from sqlalchemy import Column
from sqlalchemy import Integer,String
from sqlalchemy import create_engine
from chun import db


class Users(db.Model):
    __tablename__ = 'users'

    id = Column(Integer, primary_key=True)
    name = Column(String(32), index=True, nullable=False)
    depart_id = Column(Integer)

6、生成表(app上下文) 忽略,可以通过数据库迁移进行

离线脚本文件

from 项目名称 import db,create_app

    app = create_app()
    app_ctx = app.app_context() # app_ctx = app/g
    with app_ctx: # __enter__,通过LocalStack放入Local中
        db.create_all() # 调用LocalStack放入Local中获取app,再去app中获取配置

7、基于ORM的数据操作

使用的是threding.local

from flask import Blueprint
from 项目名称 import db
from 项目名称 import models
ind = Blueprint('ind',__name__)


@ind.route('/index')
def index():
    # 使用SQLAlchemy在数据库中插入一条数据
    # db.session.add(models.Users(name='xx',depart_id=1))
    # db.session.commit()
    # db.session.remove()
    # 查看数据
    result = db.session.query(models.Users).all()
    print(result)
    db.session.remove()

    return 'Index'

 

转载于:https://www.cnblogs.com/wt7018/p/11618756.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值