Jinja2 - проблема при цикле словарь, который использует шестнадцатеричные числа в качестве ключа - PullRequest
0 голосов
/ 29 мая 2019

Я пытаюсь перебрать следующий словарь Python, используя Jinja2 a 'for loop'

eg. {'0x1007c': '1'}. 

Однако Джинджа жалуется на шестнадцатеричное значение. Есть идеи как это исправить?

Я пытался избежать значения, но я не уверен, что это правильный способ решить проблему.

{% extends 'layout.html' %}

{% block body %}
    <h1>Devices</h1>
    <ul class="list.group">
        {% for device in devices %}
            <li class="list.group">{{ device.0x1007c }}</li> 
        {% endfor %}
    </ul>
{% endblock %}

Я получаю сообщение об ошибке:

jinja2.exceptions.TemplateSyntaxError: ожидаемый токен до конца печати оператор ', получил' x1007c '

Я ожидал получить значение 1.

1 Ответ

0 голосов
/ 29 мая 2019

Если devices является list и каждый его элемент device является dict, то оно должно быть {{device['0x1007c']}}.

Если devices равно dict, то device является ключом, поэтому оно должно быть {{devices[device]}}.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...