• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 编写Python脚本把sqlAlchemy对象转换成dict的教程

编写Python脚本把sqlAlchemy对象转换成dict的教程

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了python sqlalchemy,python3 sqlalchemy,python dict,python dict函数,python dict遍历等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

在用sqlAlchemy写web应用的时候,经常会用json进行通信,跟json最接近的对象就是dict,有时候操作dict也会比操作ORM对象更为方便,毕竟不用管数据库session的状态了。

假设数据库里有一张post表,其中一种方法就是

p = session.query(Post).first()
p.__dict__

</div>

但由于p是sqlAlchemy的对象,所以p.__dict__中会有一些其他的属性比如_sa_instance这种我们不需要关注的

那么我们可以给model的基类加一个方法,假设models.py中原来是这样

Base = sqlalchemy.ext.declarative.declarative_base()

class Post(Base):
  __tablename__ = 'post'
  id = Column(Integer, primary_key=True)
  title = Column(String)

</div>

那么我们可以加一个to_dict()方法到Base类中

def to_dict(self):
  return {c.name: getattr(self, c.name, None) for c in self.__table__.columns}

Base.to_dict = to_dict

</div>

这样就可以

p = session.query(Post).first()
p.to_dict()

</div>

当然,如果model没有和table绑定的话model里是没有__table__的信息的,可能也会出问题,不过我目前觉得这样最方便了

</div>

您可能想查找下面的文章:

  • 浅析python中SQLAlchemy排序的一个坑
  • Python的SQLalchemy模块连接与操作MySQL的基础示例
  • Python的SQLalchemy模块连接与操作MySQL的基础示例
  • 教大家使用Python SqlAlchemy
  • 编写Python脚本把sqlAlchemy对象转换成dict的教程
  • 编写Python脚本把sqlAlchemy对象转换成dict的教程
  • Python的SQLAlchemy框架使用入门
  • Python程序中使用SQLAlchemy时出现乱码的解决方案
  • Python SQLAlchemy基本操作和常用技巧(包含大量实例,非常好)
  • Python SQLAlchemy基本操作和常用技巧(包含大量实例,非常好)

相关文章

  • Python导出数据到Excel可读取的CSV文件的方法
  • 各个系统下的Python解释器相关安装方法
  • 简单实现python爬虫功能
  • python获取文件后缀名及批量更新目录下文件后缀名的方法
  • Python错误提示:[Errno 24] Too many open files的分析与解决
  • 简单讲解Python中的字符串与字符串的输入输出
  • Python_解析xml
  • Python3读取UTF-8文件及统计文件行数的方法
  • Python and、or以及and-or语法总结
  • 在Mac OS上搭建Python的开发环境

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Python3实现并发检验代理池地址的方法
    • 用Python实现一个简单的线程池
    • 在Linux系统上通过uWSGI配置Nginx+Python环境的教程
    • python脚本监控docker容器
    • Python在线运行代码助手
    • 详解python 字符串和日期之间转换 StringAndDate
    • Python实现子类调用父类的方法
    • 深入讲解Python编程中的字符串
    • Python下singleton模式的实现方法
    • python解析xml模块封装代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有