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

¿Fue útil?

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
scroll top