Динамическое заполнение шаблона из двух списков

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

Может ли кто-нибудь сказать мне, как я могу добиться чего-то вроде этого:

current_task_resources_types = ["image", "html"]
current_task_resources_names = ["elephant.png", "index.html"]

"task": [
    {% for index in current_task_resources.length %}
        {"type": "{{ current_task_resources_types.index }}", "url": "{{ current_task_resources_names.index }}"},
    {% endfor %}
],

person TheAptKid    schedule 27.07.2013    source источник


Ответы (1)


Вы можете zip списки в вашем представлении,

current_task_resources = zip(current_task_resources_types, current_task_resources_names)

затем прокрутите заархивированный список в своем шаблоне

"task": [
    {% for type, name in current_task_resources %}
        {"type": "{{ type }}", "url": "{{ names }}"},
    {% endfor %}
]

В Python 2 itertools.izip может улучшить производительность, если списки длинные.

person Alasdair    schedule 27.07.2013