【问题标题】:How to a serialize model field that holds raw JSON?如何序列化包含原始 JSON 的模型字段?
【发布时间】:2019-05-17 06:32:53
【问题描述】:

假设我的模型中有一个存储原始 JSON 的字段(因此包含双引号,nullfalse 等):

class Activity(models.Model):
    textjson = models.TextField(default="Unassigned")

我如何序列化这个模型,以便 API 响应不包含反斜杠,双序列化的标志?

【问题讨论】:

标签: python django django-rest-framework


【解决方案1】:

如果你使用 PostrgeSQL 那么你可以使用 JSONFIeld 来避免序列化。要将原始文本转换为 JSON,请使用

json.loads(string)

或者从json中获取字符串

json.dumps(json)

【讨论】:

  • segment_efforts 已被转储 - 它是原始 JSON 文本。序列化程序再次将其转换为文本并出现反斜杠。而json.loads 给出的是 Python 对象,而不是文本。
  • loads() 返回字典。正如上面所写。哪个序列化程序在文本中添加斜线?
猜你喜欢
  • 1970-01-01
  • 2022-11-24
  • 1970-01-01
  • 1970-01-01
  • 2020-07-11
  • 1970-01-01
  • 2014-04-05
  • 1970-01-01
相关资源
最近更新 更多