Somme des éléments de la liste à Jinja 2

J'ai la liste de Jinja2 qui contiennent des dicts en lui-même. Quelque chose comme

items = [{'name':'name1', 'points':5}, {'name':'name2', 'points':7}, 
 {'name':'name3', 'points':2}, {'name':'name4', 'points':11}]

Ce dont j'ai besoin est d'obtenir la somme de tous les points imprimer et quelque part plus tard.

Actuellement ce que j'ai est:

{% set points = 0 -%}
{% for single_item in items -%}
    {% set points = points + single_item["points"] -%}
    {{points}}
{% endfor %}
{{ points }}

Résultat est de: 5 12 14 25 0

Est-il possible que je peux obtenir ce que points à l'extérieur de la boucle a de la valeur 25 (dernière valeur de la boucle)?

  • Ce genre de logique appartient au contrôleur, pas le modèle. Prétraiter vos données en conséquence, et de passer items comme dire que total pour le modèle.
  • Peut-être que vous devriez poster ça comme réponse ?
  • Je suis d'accord avec vous tout à fait, mais dans mon cas, il serait grand désordre.
InformationsquelleAutor Perun | 2014-08-27