Pregunta
<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>
Hola, siempre muestra 2. Pero me gustaría mostrar 2 3 4 5 ... ¿Cómo hacerlo? Gracias
Solución
Perdón por la demora, podrías hacer algo como.
<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>
Otros consejos
Lo siento, llego un poco tarde ;-)
¿No se resolvería mejor esto con variables repetidas?
<tal:loop repeat="item s_items">
<div tal:content="repeat/item/number">1</div>
</tal:loop>
("bucle" en lugar de "bloque" es solo una cuestión de gusto ...)
El nombre después de "repetir" es el nombre de su variable iteradora "elemento"; "Número" comienza con 1, "índice" comienza con 0 (hay más).
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow