【发布时间】:2014-01-03 06:48:21
【问题描述】:
在我的 Python 包中,我定义了一些 Sqlalchemy 实体类。所有类都是使用 ORM 声明性技术定义的。大多数类使用普通属性和关系直接映射到数据库表(以 1:1 的方式),只有几个类使用简单的 hybrid_attributes。
当您查看其他一些软件包(例如 Elixir 或 Camelot)时,它们具有补充的 sqlalchemy 功能,这些功能提供方便的操作作为附加到每个实体实例的额外属性。例如,to_dict() 将 Entity 实例复制到字典中,from_dict() 尝试从字典中创建新的 Entity 实例。
最简单的方法是什么?手动将这些函数添加到我自己的实体类中?寻找对最常见用途的警告最少的通用方法。
使用元数据/映射器找到合适的列键集? (对于 to_dict)
类方法?静态方法?
子类 declarative_base 来自sqlalchemy.ext.declarative?
mixin 呢?
【问题讨论】:
标签: python sqlalchemy