Flask SQLAlchemy自定义方法

斯里坎特·耶娃(Srikanth Jeeva)

我有一个Flask SQLAlchemy模型,我想创建一个名为“ uuid”的自定义方法并在API响应中使用它。

这是我要在模型内部创建的自定义方法。在Flask模型中的何处以及如何创建?

def uuid():
    "br-%s", self.id

这是当前模型:

from app import db
from marshmallow import fields

class Build(db.Model):
    __tablename__ = 'builds'
    id = db.Column(db.Integer, primary_key=True)
    product = db.Column(db.String(200))
    # uuid = "build_<id_field>"

class BuildSchema(ma.Schema):
    class Meta:
        fields = ('id',
                  'uuid',
                  'product')

build_schema = BuildSchema()
    
史蒂芬·弗里

一种方法是使用内置@property装饰器

from app import db
from marshmallow import fields

class Build(db.Model):
    __tablename__ = 'builds'
    id = db.Column(db.Integer, primary_key=True)
    product = db.Column(db.String(200))

    @property
    def uuid(self) -> str:
        return "br-%s" % self.id

class BuildSchema(ma.Schema):
    
    id = ma.fields.Integer()
    uuid = ma.fields.String()
    product = ma.fields.String()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章