django 无法访问模板中的 jsonfield 数据

Posted

技术标签:

【中文标题】django 无法访问模板中的 jsonfield 数据【英文标题】:django not able to access jsonfield data in templates 【发布时间】:2018-02-14 01:54:14 【问题描述】:

其实我不知道如何访问模板中的jsonfield数据。我试过这样的事情

% for key in place.places_to_visit %
     key : value 
% endfor %

但它显示了我添加的所有 json 数据,包括 和“”,并且对于字符的 Arrayfield 也相同 我还想在那个jsonfield中添加一个图像,怎么做?该图像是否需要是媒体目录,然后我应该包含它的路径?或者其他一些方法可以做到这一点? 它还显示错误如下

"[05/Sep/2017 23:03:00] "GET /ontheway/1/ HTTP/1.1" 200 4238"

places_to visit的jsonfield数据是

"Places to visit": [
           
              "name" : "some name",
              "overview" : " some data",
              "iamge": "image path"
             
            
              "name" : "some name",
              "Overview": " some data",
              "image": "image path"
             
           ]

提前谢谢你

【问题讨论】:

【参考方案1】:

你可以尝试使用items:

% for data in place.places_to_visit %
    % for key, value in data.items %
       % if key == 'image' %
           <img src=" value ">
       % else %
           <div>  key : value  </div>
       % endif %
    % endfor %
% endfor %

【讨论】:

可以通过简单地将 place.places_to_visit 添加到模板中来显示place.places_to_visit,请通过编辑将结果作为文本格式添加到问题中 很高兴为您提供帮助,请不要忘记接受答案 是的,工作谢谢。但是我有几个问题 1. 没有显示图像,而是显示了它的路径,所以你能告诉我如何在 JSONfield 中添加图像,第二个是所有内容都显示在单行上。我想在新行上添加新条目所以怎么做是吗? 更新了试试看,希望图片路径是图片的真实url,否则看不到图片 我需要在静态文件中添加图像还是任何其他路径都可以?

以上是关于django 无法访问模板中的 jsonfield 数据的主要内容,如果未能解决你的问题,请参考以下文章

如何在具有 Jsonfield 的模型中发布 django rest 中的数据

在 django rest 框架中更新 JSONField

无法访问 Django 模板中的属性

ArrayField 中的 Django JSONField

使用 JSONField 中的列表在 Django 中查找对象

Django 模板无法访问重复引号中的 JSON Key: " 'Key' ": " Value "