Vous n'êtes pas identifié(e).
bonjour
j'ai la boucle suivante
{% for i in resultat %}
{{i }}
{% endfor %}
avec resultat : [30, 25, 28, 40, 35, 37, 60, 42, 44]
je voudrai que si {{i }} vaut 40 afficher 35 et 37
si {{i }} vaut 60 afficher 42 et 44
y a t'il un moyen simple de faire le test dans la boucle ?
Hors ligne
bonjour,
je voudrais pas rentrer dans la case :
"dis moi ce que tu veux, je te dirai comment t'en passer"
mais je vais le faire quand même.
Ce qui me plait avec django, c'est que la simplicité du templatage de
django est une force.
Je travaille beaucoup en java/jsp et les possibilités trop complexes
du jsp donnent soivent des templates imbitables.
vous pouvez peut-être faire cela en template.
Je vous conseille cependant de prémacher le travail en python.
Librement,
Sébastien.
Le 08/12/11, sesame<pat.100 _AT_ hotmail.fr> a écrit :
> bonjour
>
> j'ai la boucle suivante
>
> {% for i in resultat %}
> {{i }}
> {% endfor %}
>
> avec resultat : [30, 25, 28, 40, 35, 37, 60, 42, 44]
>
> je voudrai que si {{i }} vaut 40 afficher 35 et 37
> si {{i }} vaut 60 afficher 42 et 44
>
> y a t'il un moyen simple de faire le test dans la boucle ?
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>
Hors ligne
comme dit sebastien ce genre de logique doit se faire dans les view.
Après tu peux toujours tordre django tant que tu veux, mais sachant que tu sors de la philosophie "le template est juste là pour afficher", ne t'etonne pas de ne pas trouver les outils.
je connais pas ta logique, mais en gros si ta view construisait aurement "resultat", par exemple :
test = ( (30,(25,28)), (40,(35, 37)), (60,(42,44)) )
{% for r in test %}
{{r.0}} donc afficher {{ r.1.0 }} et {{r.1.1}}<br/>
{% endfor %}
J'utilise le fait qu'on peut appeler dans le template un élément de liste à partir de son numéro d'index.
Mais tu peux rendre ça plus explicite avec des dict
test = { 'premier_chiffre':30, 'valeurs':(25,28) }
{{test.premier_chiffre}} donc afficher {{ test.valeurs.0 }} et {{test.valeurs.1}}<br/>
Hors ligne
merci, le plus dur c'est la logique de django, tout est simple après...
Hors ligne
la solution n'est pas dans python mais dans le javascript et ca marche
Hors ligne