【问题标题】:How can I do to convert a valuesqueryset to a JSON with datetime?如何使用日期时间将 valuesqueryset 转换为 JSON?
【发布时间】:2019-10-21 23:54:15
【问题描述】:

您好,我正在尝试将列表转换为 JSON,这是我的代码:

json.dumps(myList)

但问题是在我的 valuesqueryset 中我有一些 datetime ...

你有解决这个问题的想法吗?

谢谢!

【问题讨论】:

  • 如果您提供valuequeryset 列表的示例,将会有所帮助。您可以遍历您的列表并将所有日期时间类型转换为字符串。

标签: python json django python-3.x


【解决方案1】:

Django 提供了一个原生的 DjangoJSONEncoder 序列化器,可以正确处理这种情况。

https://docs.djangoproject.com/en/dev/topics/serialization/#djangojsonencoder

from django.core.serializers.json import DjangoJSONEncoder

return json.dumps(
  item,
  sort_keys=True,
  indent=1,
  cls=DjangoJSONEncoder
)

【讨论】:

  • 我试过了,但我得到了这个:{TypeError}<QuerySet ... 这很紧张,因为我尝试使用serializers.serialize() 并且它有效,但问题是我不能使用serializers.serialize(),因为我有外键......
  • 您可以添加一个列表示例吗?
  • 日期时间A string of the form YYYY-MM-DDTHH:mm:ss.sssZ or YYYY-MM-DDTHH:mm:ss.sss+HH:MM as defined in ECMA-262.
猜你喜欢
  • 2013-09-20
  • 2014-07-06
  • 2012-02-09
  • 1970-01-01
  • 2011-09-29
  • 1970-01-01
  • 1970-01-01
  • 2011-04-14
  • 2010-11-03
相关资源
最近更新 更多