2016-12-30 346 views
1

此代码不能工作,并给JSON序列化的错误我婉日期时间存储在peewee.DateTimeField(),我用在该领域为默认datetime.datetime.now(),但它不能正常工作

class Bank(peewee.Model): // create Bank table 
     bank_id  = peewee.PrimaryKeyField() 
     bank_name = peewee.CharField() 
     account_no = peewee.CharField() 
     ifc_code = peewee.CharField() 
     swift_code = peewee.CharField(null = True) 
     modify_date = peewee.DateTimeField(default=datetime.datetime.now(),formats=['%Y-%m-%d'])/*date in yyyy-mm-dd formate*/ 
     status  = peewee.IntegerField(default = 0) 

     class Meta: 
      database = db 

回答

2

您提供的默认日期不是日期时间对象。相反,它是一个字符串!

modify_date = peewee.DateTimeField(default=datetime.datetime.now().strftime('%Y-%m-%d')) 

type(datetime.datetime.now().strftime('%Y-%m-%d')) - >str

可以传递默认这样当前日期时间对象:

date = datetime.datetime.now().strftime('%Y-%m-%d') 
need_date = datetime.strptime(date, '%Y-%m-%d') 

modify_date = peewee.DateTimeField(default=need_date) 
+0

类型错误:datetime.datetime(2016,12,30,0,0)是不是JSON可序列化 –

+0

datetime.datetime(2016,12,30,0,0)对str很好 – single430

+0

看你的输出部分 – single430

相关问题