首页 > 代码库 > Flask SQLAlchemy 表字段默认值
Flask SQLAlchemy 表字段默认值
在网上查到的SQLAlchemy设置字段默认值的方法都是类似如下方法:
from sqlalchemy.sql.sqltypes import TIMESTAMP class Test(db.Model): id = db.Column(db.Integer, primary_key = True) name = db.Column(db.String(32)) create_date = db.Column(TIMESTAMP, default = datetime.datetime)
但这种方法其实这种方法根本就没有在数据库里面设置默认值,只是使用了SQLAlchemy Model类提交数据时添加上去的值,并不适合需要取数据库所有服务器时间的场合。
后来,发现一种使用SQLAlchemy模型直接在数据库设置默认值的方法:
#mysql 日期设置默认值必须使用timestamp类型 from sqlalchemy.sql.sqltypes import TIMESTAMP #func用来生成数据库函数代码,跟踪进源代码看一***释就明白了 from sqlalchemy.sql import func class Test(db.Model): id = db.Column(db.Integer, primary_key = True) name = db.Column(db.String(32)) create_date = db.Column(TIMESTAMP, server_default = func.now()) #注意这里是server_default
最新数据库表效果:
本文出自 “自由自我” 博客,请务必保留此出处http://hhuayuan.blog.51cto.com/1630327/1599981
Flask SQLAlchemy 表字段默认值
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。