Flask SQLAlchemy模型混合-迁移中的字段顺序

时间:2018-07-17 09:02:39

标签: python flask sqlalchemy

我将Flask与Flask-SQLAlchemy结合使用,并在代码中创建模型,并使用“ db migration”命令创建迁移文件-所有简单的东西。

我现在正在寻求更改一些模型,以便它们使用mixin添加一些常见字段:date_created和date_updated。

这可以通过在其中添加字段来起作用,但是在我的mixin中描述的字段是在主模型的字段之前添加的。这意味着我在诸如“ ID”之类的重要列之前获得了date_created和date_updated。

有没有一种方法可以明确地告诉flask / sqlalchemy在其他字段之后添加mixin字段?

这是我的代码:

'\0'

这是“ flask db migration”命令随后产生的结果:

class CreatedUpdatedMixin:

    date_created = db.Column(db.DateTime, default=db.func.current_timestamp())
    date_modified = db.Column(
        db.DateTime, default=db.func.current_timestamp(),
        onupdate=db.func.current_timestamp()
    )

class Bookmark(db.Model, CreatedUpdatedMixin):

    __tablename__ = 'bookmark'

    bookmark_id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey(User.id))
    name = db.Column(db.String(255))
    url = db.Column(db.String(255))

由于类继承的性质,我确实知道,这些字段的顺序由此决定,但我希望有一种方法可以对此进行更改。

0 个答案:

没有答案