Comment parcourir une liste de dictionnaires à jinja modèle?
J'ai essayé:
list1 = [{"username": "abhi", "pass": 2087}]
return render_template("file_output.html", list1=list1)
Dans le modèle:
<table border=2>
<tr>
<td>
Key
</td>
<td>
Value
</td>
</tr>
{% for dictionary in list1 %}
{% for key in dictionary %}
<tr>
<td>
<h3>{{ key }}</h3>
</td>
<td>
<h3>{{ dictionary[key] }}</h3>
</td>
</tr>
{% endfor %}
{% endfor %}
</table>
Le code ci-dessus est à diviser chaque élément dans de multiples personnages:
[
{
"
u
s
e
r
...
J'ai testé au-dessus de la boucle imbriquée dans un simple script Python et il fonctionne très bien mais pas à Jinja modèle.
Vous devez vous connecter pour publier un commentaire.
De données:
dans Jinja2 itération:
Remarque:
assurez-vous que vous disposez de la liste des dict éléments.Si vous obtenez
UnicodeError
peut être la valeur à l'intérieur de la dict contient format unicode. Ce problème peut être résolu en votreviews.py
si le dict est
unicode
objet, vous devez coder enutf-8
dict_item.items
à la place) ou de jeter unCould not parse the remainder: '()' from 'dict_item.items()'
dict.key
à la place du classiquedict["key"]
.dict["key"]
ne fonctionne pas pour vous, alors vous n'êtes pas à l'aide de Jinja des modèles, mais des modèles Django. Voir Accéder dictionnaire clé dans Django templateAu passage à @Navaneethan 's réponse,
Jinja2
est capable de faire "régulier" sélections d'articles pour la liste et le dictionnaire, étant donné que nous savons que la clé du dictionnaire ou de l'emplacement des éléments dans la liste.De données:
dans Jinja2 itération:
Le rendu de sortie:
lis
n'est pas une liste lorsque le code que vous avez partagées est exécutée.