我想从两个包含变量值的列表中动态填充模板。
有人能告诉我,我怎么能达到这样的目的:
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 %}
],
答案 0 :(得分: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
可能会提高性能。