文章内容
2021/6/19 10:39:01,作 者: 黄兵
Object of type Decimal is not JSON serializable
最近在使用Json序列化的时候,遇到Decimal
无法序列化的问题,具体报错内容:
TypeError: Object of type Decimal is not JSON serializable
出现问题的原因:
Decimal
无法被Json
序列化,所以出现了以上错误。
具体出错代码:
for item in get_user_geolocation:
convert_to_ip = IPy.intToIp(item.ip, version=4)
geolocation_dict = {'id': item.id, 'ip': convert_to_ip, 'latitude': item.latitude,
'longitude': item.longitude, 'createTime': item.create_time,
'updateTime': item.time_updated, 'confirm': item.confirm}
temp_list.append(geolocation_dict)
return jsonify(temp_list)
这里主要是经纬度出现问题,需要将Decimal
转换成string
数据类型。
解决方案:
直接将Decimal
的数据类型转换成string
数据类型。
具体代码如下:
for item in get_user_geolocation:
convert_to_ip = IPy.intToIp(item.ip, version=4)
geolocation_dict = {'id': item.id, 'ip': convert_to_ip, 'latitude': str(item.latitude),
'longitude': str(item.longitude), 'createTime': item.create_time,
'updateTime': item.time_updated, 'confirm': item.confirm}
temp_list.append(geolocation_dict)
return jsonify(temp_list)
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - Object of type Decimal is not JSON serializable
评论列表