Pergunta

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

Olá, mostre sempre 2.mas eu gostaria de mostrar 2 3 4 5 ...Como fazer?Obrigado

Foi útil?

Solução

Desculpe pelo atraso, você pode fazer 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>

Outras dicas

Desculpe, estou um pouco atrasado ;-)

Isso não seria melhor resolvido com variáveis ​​repetidas?

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

("loop" em vez de "block" é só uma questão de gosto...)

O nome após "repetir" é o nome da variável iteradora "item";“número” começa com 1, “índice” começa com 0 (há mais).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top