如何使用sqlalchemy.orm声明列顺序?

时间:2019-01-25 08:20:38

标签: python mysql orm sqlalchemy flask-sqlalchemy

我已经定制了一个基本模型CoModel,该模型具有声明的属性created_timeupdated_time

但是如何固定声明列的顺序?

我希望created_timeupdated_time是创建表时的最后2列。

from datetime import datetime    
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy.ext.declarative import declared_attr


session_options = dict(
    bind=None,
    autoflush=False,
    autocommit=False,
    expire_on_commit=False,
)
db = SQLAlchemy(session_options=session_options)


class CoModel():
    """ sample:
    class TableName(db.Model, CoModel):
        pass
    """

    @declared_attr
    def created_time(self):
        return db.Column(db.DateTime, default=datetime.utcnow)

    @declared_attr
    def updated_time(self):
        return db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)

0 个答案:

没有答案