我尝试使用this soln(使用this文件)将GAE数据库模型转换为json。但当我尝试使用它时,我收到此错误“TypeError:datetime.date(2010,7,27)不是JSON可序列化的”
有谁知道这个问题是什么?
或者,如果您知道将GAE数据库模型转换为JSON的替代解决方案,请建议。
答案 0 :(得分:3)
看起来你需要修改你引用的json.py并添加一个块来处理这个类型。
了解line 61处理datetime.datetime
的方式:
elif isinstance(obj, datetime.datetime):
output = {}
fields = ['day', 'hour', 'microsecond', 'minute', 'month', 'second',
'year']
methods = ['ctime', 'isocalendar', 'isoformat', 'isoweekday',
'timetuple']
for field in fields:
output[field] = getattr(obj, field)
for method in methods:
output[method] = getattr(obj, method)()
output['epoch'] = time.mktime(obj.timetuple())
return output
您需要添加一些内容来处理datetime.date
:
elif isinstance(obj, datetime.date):
#your code here...
或者只使用datetime.datetime
代替datetime.date
。