【发布时间】:2018-11-12 00:19:18
【问题描述】:
我在我的 RESTful 烧瓶应用程序中使用 sqlalchemy 和 marshmallow 来序列化我的模型。我有一个 hybrid_property 来自我在该模型上的一个关系。我现在想使用相关模型中的模式在我的模式中序列化该 hybrid_property。
以前有人做过吗?这是我的相关代码。当我检查响应时,它似乎没有在模型的序列化版本中包含last_assessment
class Person(db.Model):
daily_rula_average_ranges = db.relationship('DailyRulaAverageRange', order_by="DailyRulaAverageRange.date", back_populates='person')
@hybrid_property
def last_assessment(self):
if self.daily_rula_average_ranges.length > 0:
return self.daily_rula_average_ranges[-1]
class PersonSchema(ma.Schema):
last_assessment = ma.Nested(DailyRulaAverageRangeSchema, only=['id', 'date', 'risk'])
class Meta:
fields = ('last_assessment')
【问题讨论】:
-
出于好奇,您是否尝试过将
@property装饰器堆叠在 hybrid_property 装饰器之上?
标签: python flask sqlalchemy flask-sqlalchemy marshmallow