2015-12-02 27 views
1

在HTML破折号我有一个JSON看起来像这样如何读取Django的背景下

{  
     "values": { 
      "a": 1, 
      "b": 2, 
      "c": 3, 
      "d": 4 
     }, 
    "sales-year": [ 
     { "a": 0, "b": 0, "c": 0, "d": 0, "e": "karl" }, 
     { "a": 0, "b": 0, "c": 0, "d": 0, "e": "karl" }, 
     { "a": 4, "b": 10, "c": 20, "d": 30, "e": "karl" }, 
     { "a": 0, "b": 0, "c": 0, "d": 0, "e": "karl" } 
    ] 
} 

,我和Django的我“的index.html”,让它通过get_context_data。进一步说明here

我可以通过{{my_json.values.a}}访问相当容易的值但是我在访问sales-year数组时遇到问题。我怎么做?我尝试以下,他们没有工作:

{{my_json['sales-this'].2.a}} 
{{my_json.['sales-this'].2.a}} 
{{my_json.[sales-this].2.a}} 
{{my_json[sales-this].2.a}} 

回答

2

你需要创建一个自定义模板过滤器来处理这个

首先创建一个自定义模板过滤器,如:

from django import template 
register = template.Library() 

@register.filter 
def getItem(dict, key): 
    return dict.get(key) 

下一个你模板不喜欢:

{{my_json|getItem:'sales-year'}} 

了解更多关于如何使用/创建自定义过滤here

+0

ahh kkk谢谢! – Tom