Sqlalchemy 事件监听与初始化
sqlalchemy不仅仅能自动创建数据库,更提供了其他更强大的功能,今天要介绍的就是sqlalchemy中的事件监听,并将其应用到数据库的初始化中。 需求:当插入设置password字段时,自动加密 # -*- coding:utf-8 -*- from sqlalchemy import * from sqlalchemy import event from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import scoped_session, sessionmaker import hashlib #这里定义一个password加密混淆 password_prefix = "Ad%cvcsadefr^!deaf" #定义数据库的账号、端口、密码、数据库名,使用的连接模块,这里用的是mysqldb engine = create_engine( 'mysql+mysqldb://root:1234567@localhost:3306/tech?charset=utf8', echo=False#是否输出数据库操作过程,很方便调试 ) #定义一个函数,用来获取sqlalchemy的session def bindSQL(): return scoped_session