在 Django 模板中解析 JSON

syv*_*syv 4 django django-templates

我想填充我从 Webservice 获取的数据 - 模板中的 JSON 响应。

我的服务集成代码:

serviceRequest  = requests.get(ServiceSettings.getCitiesURL(),  
headers={
"Content-Type":servicesettings.JSON_CONTENT_TYPE,
"Accept":servicesettings.HEADER_ACCEPT 
})                                  
dataJson = serviceRequest.json ()
Run Code Online (Sandbox Code Playgroud)

我得到的回应是

{"cities": [{"latitude": "21.321", "cityIdentifier": "GOOD", "cityName": "NY", "longitude": "23.23432"} , {"latitude": "1.321", "cityIdentifier": "GOOD", "cityName": "CA", "longitude": "3.23432"}
], "statusMessage": "OK", "statusCode": 200}
Run Code Online (Sandbox Code Playgroud)

我正在尝试在 DJango Tempalte (HTML) 中迭代它,如下所示,但无法列出 cityName

{% for objCities in cityList%} 
    {% for objCity in objCities.citiess%} 
        {{objCity.cityName}}
    {% endfor%}
{% endfor%}
Run Code Online (Sandbox Code Playgroud)

Ale*_*ich 6

在您的循环中,您试图访问带有索引的字符串。于是TypeError: string indices must be integers, not str被提了起来。

考虑以下事项:

{% for objCity in cityList.cities %} 
    {{objCity.cityName}}
{% endfor%}
Run Code Online (Sandbox Code Playgroud)

这将起作用。