有时候需要增加额外的列添加到视图中,flask-admin 自定义属性添加到column_list
class Withdrawal(db.Model):
__tablename__ = 'withdrawals'
id = db.Column(db.Integer, primary_key=True)
fabric_id = db.Column(db.Integer, db.ForeignKey('fabrics.id'))
fabric = db.relationship('Fabric', backref='withdrawals')
length = db.Column(db.Float)
class Fabric(db.Model):
__tablename__ = 'fabrics'
name = db.Column(db.String(256))
id = db.Column(db.Integer, primary_key=True)
org_length = db.Column(db.Float)
@property # 自定义的属性
def length(self):
return self.org_length - sum(x.length for x in self.withdrawals)
class FabricModelView(ModelView):
# 将自定义属性显示到视图列表中
column_list = ('org_length', 'length')