Reputation: 1563
I have to following scenario:
a python list of python dictionaries l = [a,b,c,...,n]
each element of the list is a python dictionary that looks something like this:
d = {}
d['type'] = 5
d['content'] = 'somestring'
Now i want all dictionaries as a list in in a main template. However each dictionary's content should be rendered by a child template. Which template to use to render the content should be defined by the type variable of the dictionary.
Any hints on how this can be accomplished using Jinja2 (I'm using it via Flask if that helps..)
Thanks!
Upvotes: 26
Views: 10208
Reputation: 1563
If anyone needs it:
{% for d in dicts %}
{% set template = d.type + '.html' %} {% include template %}
{% endfor %}
then in the template you can access the content like so:
{{ d.content }}
Thanks to donri from the #pocoo channel on freenode !
Upvotes: 56