在Django模板中使用unicode字符串中的属性

时间:2014-07-08 17:35:31

标签: django

我有一个模型,我使用TextField()来存储JSON数据。假设此字段中有以下数据称为json_data:

{"name":"alex","surname":"grs","type":"warrior"}

在我的模板中,我试图从我的json_data对象访问属性但没有成功(模板认为这个json_data是一个unicode字符串,而不是一个可迭代的对象。

{{json_data.name}} # empty
{{json_data.surname}} # empty
{{json_data}} # print {"name":"alex","surname":"grs","type":"warrior"}

您是否了解我如何访问这些属性?我想在python对象中进行转换,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:3)

您只需要在视图中反序列化它。

json_data = json.loads(my_json_string)

您应该考虑使用许多第三方JSONField实现中的一个,这些实现在您加载模型时会对数据进行反序列化,并在您保存时再次对其进行序列化。