2010-02-23 5 views
2
<div tal:define="number python: 1"> 
<tal:block repeat="item s_items"> 
    <div tal:define="number python: number + 1">  
     <div tal:content="python: number">none</div> 
    </div> 
</tal:block> 
</div> 

Salut, toujours montrer 2. mais je voudrais montrer 2 3 4 5 ... Comment faire? MerciZope et tal, la fonction de répétition

Répondre

1

désolé pour le retard, vous pourriez faire quelque chose comme.

<div tal:define="global number python: 1"> 
<tal:block repeat="item s_items"> 
<div tal:define="global number python: number + 1">  
    <div tal:content="python: number">none</div> 
</div> 
</tal:block> 
</div> 
3

Désolé, je suis un peu en retard ;-)

Ne serait-ce mieux résolu avec des variables de répétition?

<tal:loop repeat="item s_items"> 
    <div tal:content="repeat/item/number">1</div> 
</tal:loop> 

("boucle" au lieu de "bloc" est juste une question de goût ...)

Le nom après "repeat" est le nom de votre variable iterator "item"; "numéro" commence par 1, "index" commence par 0 (il y en a plus).

Questions connexes