How Can I Automatically Populate SQLAlchemy Database Fields? (Flask-SQLAlchemy)
Just add server_default
or default
argument to the column fields:
created_on = db.Column(db.DateTime, server_default=db.func.now())updated_on = db.Column(db.DateTime, server_default=db.func.now(), server_onupdate=db.func.now())
I prefer the {created,updated}_on
column names. ;)
SQLAlchemy docs about column insert/update defaults.
[Edit]: Updated code to use server_default
arguments in the code.
[Edit 2]: Replaced onupdate
with server_onupdate
arguments.
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())