【问题标题】:How to read a dash in html from django context如何从 django 上下文中读取 html 中的破折号
【发布时间】:2016-03-07 04:38:22
【问题描述】:

我有一个像这样的 json

{    
        "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" }
    ]
}

然后我将它通过get_context_data 与 django 传递给我的“index.html”。进一步解释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}}

【问题讨论】:

    标签: python json django html


    【解决方案1】:

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

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

    from django import template
    register = template.Library()
    
    @register.filter
    def getItem(dict, key):
        return dict.get(key)
    

    模板中的下一个:

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

    详细了解如何使用/创建自定义过滤器here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-18
      • 1970-01-01
      • 2023-01-23
      相关资源
      最近更新 更多