繁体   English   中英

Flask SQLAlchemy updated_on

[英]Flask SQLAlchemy updated_on

我想创建字段Datetime ,它将在更新行时更新当前日期时间。 我试过这个:

updated_on = Column(DateTime, onupdate=db.func.now())

和这个:

updated_on = Column(DateTime, server_onupdate=db.func.now())

但是只有当我添加新行并且更新该行后没有更改时才会更新字段。 更新:

class UserLog(db.Model):
    id = Column(Integer, primary_key=True)
    user_id = Column(Integer, ForeignKey('user.id'))
    state = Column(String(25))
    created_on = Column(DateTime, server_default=db.func.now())
    updated_on = Column(DateTime, onupdate=datetime.utcnow)

首先, server_onupdate不会在服务器端做任何事情,它只是在那里让 SQLAlchemy 知道服务器“应该”在更新时生成一个值。 这真的是误导。 您必须手动配置数据库以在更新时生成值。 SQLAlchemy 不适合你。

所以使用onupdate onupdate=datetime.utcnow 不要忘记导入datetime

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM