在最近的移动端后台项目里, 基于 SQLAlchemy 这个组件封装了自己的业务模块,
也是第一次对 Python Web 开发 Model 有一个初步的印象和理解. 基于它做
业务开发, 使用中需要有将实例数据转换为 Python Dict 的操作(或者是序列化为
Json 数据, 返回给客户端接口). 简单的做法是, 对具体的每个业务 Model 定义了
Column 之后, 定义成员函数 def to_dict(self), 根据具体 Model 的数据属性
来写对应的转换方式, 工作量相对繁琐, 是否有更合适的方式实现, 且少写代码, 也就
开始实践和寻找更好的实现的方式.
本文提供四种实现方式, 方案1, 2 为 stackoverflow 提供的解答,
方案3,4 是我在项目中先后使用的方案(代码基于 Python3实现).
方案4为推荐实现, 并且分别提供原生的SQLAlchemy 和 Flask-SQLAlchemy BaseModel 实现例子:)