[英]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.