Python 烧瓶炼金术:照片柱类型

Python 烧瓶炼金术:照片柱类型,python,sqlalchemy,flask,flask-sqlalchemy,Python,Sqlalchemy,Flask,Flask Sqlalchemy,在我使用Flask/SQLAlchemy编写的web应用程序中,我的几个模型需要一个“Photo”列类型,它可以处理将原始图像存储在文件系统的某个位置,并创建不同大小的图像缩略图。理想情况下,我想要的是: class MyModel(Base): id = Column(Integer, primary_key=True) photo = Column(Photo(root="/path/to/photos/", formats={ "big

在我使用Flask/SQLAlchemy编写的web应用程序中,我的几个模型需要一个“Photo”列类型,它可以处理将原始图像存储在文件系统的某个位置,并创建不同大小的图像缩略图。理想情况下,我想要的是:

class MyModel(Base):
    id        = Column(Integer, primary_key=True)
    photo     = Column(Photo(root="/path/to/photos/", formats={
        "big"      : "800x600",
        "small"    : "400x300",
        "thumbnail": "100x75"
    }))
然后,我可以访问如下文件的URI/URL:model.photo.big等

所以,我的问题是:如何在model.photo对象上添加setter/getter,以便使用所提到的语法访问URI/URL? 顺便说一句,如果有人对使用SQLAlchemy的用户定义类型有很好的教程/资源(官方文档除外),如果他能分享,我将不胜感激


Thx

这不是一个答案,但我认为使用如下链接中描述的图像缩略图结构更方便:

使用标签创建缩略图时,只需在数据库中存储原始图像路径。

您看过了吗?
它似乎正是您想要的。

最后,我完成了如上所述的图像字段编码。不过,标记approcach很有趣。