如何JSON序列化包含Django PointField的字典?

时间:2014-08-31 04:09:12

标签: json django gis postgis geodjango

在我的Django应用程序中,我有一个python字典,如下所示:

myDict = {"A": 1, "B": "Z", "C": {"D":"E"},}

当我想序列化它并通过卷曲可命中端点返回此dict时,我会执行以下操作。它有效:

return HttpResponse(
    json.dumps(myDict), 
    content_type="application/json",
)

但是,如果我现在向myDict添加一个PointField的值,如下所示:

myDict["myPoint"] = Point(70.0, 30.0,)

我收到以下错误:

TypeError: <Point object at 0x111bbed90> is not JSON serializable

那么如何序列化包含PointField的字典呢?我尝试了以下方法,但它绝对不起作用:

return HttpResponse(
    GeoJSONSerializer().serialize(myDict, use_natural_keys=True), 
    content_type="application/json",
)

搜索互联网并没有向我展示如何序列化包含PointField的字典的明确示例。

0 个答案:

没有答案