記錄第一次創建時間,default
falsk中如下兩個字段
create_time1 = db.Column(db.DateTime, default=datetime.now)
create_time2 = db.Column(db.DateTime, default=datetime.now())
兩者的區別:
第一個插入的是期望的, 數據的插入時間,每條數據插入時可自動根據當前時間生成
第二條是一個固定的時間, 程序部署的時間,所有的數據都是這個固定時間
實際上默認值在mysql數據庫沒有體現, 都是sqlalchemy在插入數據時加的
如果想想在生成的table中有默認值使用server_default
name = db.Column(db.String(45), server_default='hh')
當我們要給布爾值類型指定server_default時,需要用到text
from sqlalchemy import text is_domain = db.Column(db.Boolean,default=False,server_default=text('0'))
因為mysql的datetime類型的數據不支持函數, 所以沒法指定默認值位當前時間
記錄每次修改的時間,onupdate
update_time = db.Column(db.DateTime, default=datetime.now,onupdate=datetime.now)
