2010-07-28 55 views
1

我試圖使用this soln(它使用this文件)將GAE db模型轉換爲json。但是,當我試圖使用它,我得到了這個錯誤「TypeError:datetime.date(2010,7,27)不是JSON可序列化」GoogleAppEngine db將datetimeproperty模型設置爲JSON

有誰知道最新的問題?或者,如果您知道將GAE數據庫模型轉換爲JSON的替代方案,請提出建議。

回答

3

看起來你需要修改引用的json.py並添加一個塊來處理類型。

datetime.datetime如何在line 61處理:

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

+0

謝謝應付!!!! – Cool 2010-08-02 07:33:54