如何从数据库中读取词典而不被django转换成字符串?

如何从数据库中读取词典而不被django转换成字符串?,django,Django,我的数据库里有一本字典。当我从数据库中读取字典并尝试使用它时,它失败了,因为字典已自动转换为字符串。有没有办法避免Django将dict转换成字符串 MySQL和Postgres有多种选择,但我认为sqlite没有同等的选择 对于MySQL JSONField: 同样,对于博士后: 内置了查询字段内容的支持,非常简洁。这些文档显示了一些示例。您还可以使用simplejson.load()和simplejson.dumps()对字典进行反序列化和序列化。这需要做更多的工作,但它可以确保您不依赖于

我的数据库里有一本字典。当我从数据库中读取字典并尝试使用它时,它失败了,因为字典已自动转换为字符串。有没有办法避免Django将dict转换成字符串


MySQL和Postgres有多种选择,但我认为sqlite没有同等的选择

对于MySQL JSONField:

同样,对于博士后:


内置了查询字段内容的支持,非常简洁。这些文档显示了一些示例。

您还可以使用simplejson.load()和simplejson.dumps()对字典进行反序列化和序列化。这需要做更多的工作,但它可以确保您不依赖于数据库

我在这里得到的回复帮助我解决了这个问题

当从webhook捕获并保存JSON时(因为在我的项目中JSON就是从这里来的),我必须在将JSON保存到数据库之前执行序列化和反序列化的奇怪步骤。此进程删除了request.body传递的所有\r和\t字符,但使JSON无效:

t = Transaction(data=json.dumps(json.loads(request.body)))
t.save()
要将JSON从数据库加载到python字典中,然后在代码中使用,我使用了JSON.loads:

data = json.loads(t.data)