代码拉取完成,页面将自动刷新
Sqlalchemy是Python中常见的ORM操作工具,本项目封装了Sqlalchemy的部分操作,完成了常见的数据库操作,已经实现的接口有:
项目结构说明 sqlalchemy_tool下存放了自定义个工具类:
ModelMetaClass
类,该类是一个元类,现有以下功能:
__column_dict__
字段, 该字段存储了字段名和字段Column类型的字典集;Base
的Model
类,用户使用时,可以继承该Model
类,代替使用继承Base
;
Model
类中定义了实例objects
属性,该实例属性可以实现类似django的数据操作时的管理器功能Model
类中定义了类方法objects_()
,该类方法可以实现类似django的数据操作时的管理器功能Transcation
类,该类用于作为事务注解使用,可以实现自动提交、异常自动回滚;Model
实例转字典、Model
实例列表转字典列表、Model
实例转Json字符串、Model
实例列表转Json字符串;Manager
类,该类主要用于数据库操作,增、删、改、查等功能的接口都是在这个类中定义的,使用Model
实例的实例objects
属性或类方法objects_()
都是获取该Manager
的实例,有类该实例,Model
类可以直接操作数据库;BaseCrdu
类,该类主要是调用Manager
类进行数据操作,基本上是完全封装了Manager
类的接口Base
,主要用于导入Sqlalchemy的Base
现在项目还没有部署到pypi平台,如果要在项目中使用,可以按照如下流程:
pip install -r requirements.txt
,可以导入需要的库SQLAlchemy和PyMySQL;Base
的导入;Base
的导入,如这里导入的是example/database.py中配置的Base
Model
类的model类,基本用法和Sqlalchemy的定义一样,只是改继承Base
为继承Model
类, 可以参考example/models.py中的示例BaseCrdu
的类,可以参考example/crdu.py中的示例此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。