SQLAlchemy-不能'load_only'@property

时间:2019-02-08 17:09:16

标签: python sqlalchemy flask-sqlalchemy

在SQLAlchemy中,我无法弄清楚如何获取@property对象并将其加载到查询中。我想将其加载到的查询正在加入另一个模型。在此示例中,“歌曲”模型中将“ AlbumId”用作FK。另外,在“相册”模型中声明了“ relationship()”。

来自“专辑”模型:

_Album = app.db.Column("Album", app.db.String(150))

@hybrid_property
def Album(self):
    return self._Album

@Album.setter
def Album(self, Album):
    self._Album = val_out

@property
def Album_1(self):
    return self._getStuffForAlbum_1(self.Album)

def _getAlbumText(self, val_in):
    return val_out

来自SongService.py:

songs = app.db.session.query(self.Model, Album).join(Album).options(Load(Album).load_only('Artist','Year'))

在'load_only'内,我可以加载'@hybrid_property',但我不知道要加载'@property'。当我尝试用'load_only'加载“ Album_1”时,我收到一个“ AttributeError:'property'对象没有属性'property'。”

From what I understand,我无法加载'@property'是因为它是Python类存在的属性,而不是数据库表中的列。另外,I'm not sure this approach would work either因为定义了FK /关系。

0 个答案:

没有答案