当前位置: 首页 > 工具软件 > Redis ORM > 使用案例 >

Python—flask的session持久化redis、mysql的ORM配置

翟沈义
2023-12-01

一、session持久化redis

# 把session持久化到redis
(需要导入flask-session依赖)
	#定义session Key
    app.config['SECRET_KEY'] = str(uuid4())
    #选择session持久化的位置
    (需要导入redis依赖)
    app.config['SESSION_TYPE'] = 'redis'
    # session存储的前缀
    app.config['SESSION_KEY_PREFIX'] = 'flask4'
    #将session注册到app中
    Session(app=app)

使用时就按照平时session的使用方式,会自动持久化到redis中

二、mysql的ORM配置

# 配置数据库
	#定义数据库连接方式
    app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://数据库用户:数据库密码@localhost:3306/数据库'

    app.config['SQLALCHEMY_TRACK_MODIFICATIONS']=False
    # 注册app给db
    db.init_app(app)
    # 推入应用程序上下文
    #app.app_context().push()
    
    # 创建
    # (这个方法可以写在你的视图中也就是views中,如果在init中创建的话,会报上下文未推送的错误,就需要上面的这个推送上下文)
    #db.create_all()
#创建对应类
from *** import db
#需要继承db的Model
class user(db.Model):
	#定义表名
	__tablename__ = "User"
	#定义属性
	id = db.Column(db.Integer, primary_key=True, autoincrement=True)
@blue.route('/create_db')
def create_db():
    db.create_all()
    return 'create_db'
mysqlpython中定义
Integerdb.Integer
varcherdb.String

db方法的实现

语句功能实现
类名.session.add添加一个数据库信息类名.session.add(对象)
类名.session.delete删除一条数据库信息类名.session.delete(对象)
类名.query查询数据库信息类名.query.filter(条件)
类名.query查询数据库信息类名.query.filter(条件)
修改一条数据库信息查询到该条数据,更改后直接执行事务就可以更改
db.session.commit()执行事务db.session.commit()

需要持续更新!!!

 类似资料: