【发布时间】:2012-02-16 12:12:54
【问题描述】:
在我的代码中:
json.dumps({'foo': {'bar': [123L, 123L]}})
长整数是主键。此行由于某种原因会产生错误:
“[123L, 123L] 不是 JSON 可序列化的”
当我尝试在 python manage.py shell 中执行它时:
json.dumps({'foo': {'bar': [123L, 123L]}})
工作正常。
谁能告诉我发生了什么事?
确切的 Django 错误:
异常类型:TypeError 异常值:[123L] 不是 JSON 可序列化的 异常位置:默认为 /usr/lib/python2.7/dist-packages/simplejson/encoder.py,第 192 行
【问题讨论】:
-
首先,您发布的代码缺少右括号 (
})... -
你能告诉我们抛出异常的(最小的)完整代码吗?
-
尝试将 123L 转换为 int
-
您能否向我们提供有关您的环境的更多信息? Django 版本、操作系统等
-
我刚刚意识到实际问题是什么:[123L, 123L] 是 ValuesListQuerySet 类型 - 我需要以某种方式将其转换为列表。
标签: python django json django-views jsonserializer