插入sqlalchelmy日期字段

时间:2017-03-05 07:32:47

标签: python flask sqlalchemy flask-sqlalchemy

用户已将日期输入输入。

print form.date.data
>>> '2017-03-05'

现在我要输入日期或进入此

expiration_date = db.Column(db.DateTime)

我得到的错误是

sqlalchemy.exc.StatementError



  StatementError: <unprintable StatementError object>


raise TypeError("SQLite DateTime type only accepts Python "

如何摆脱将其转换为正确的格式或修复错误。

1 个答案:

答案 0 :(得分:1)

form.date.data是一个字符串,应该转换为python datetime,因为sqlalchemy DateTime列是一个python日期时间。或者您可以将日期存储为字符串。转换它:

import datetime
y, m, d = form.date.data.split('-')
expiration_date = datetime.datetime(int(y), int(m), int(d))