zope и tal, функция повтора - PullRequest
       30

zope и tal, функция повтора

2 голосов
/ 24 февраля 2010
<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>

Привет, всегда показывай 2. но я бы хотел показать 2 3 4 5 ... Как сделать? Спасибо

Ответы [ 2 ]

4 голосов
/ 25 января 2012

Извините, я немного опоздал; -)

Не лучше ли это решить с помощью повторяющихся переменных?

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

(«петля» вместо «блок» - дело вкуса ...)

Имя после «repeat» - это имя вашей переменной итератора «item»; «число» начинается с 1, «индекс» начинается с 0 (их больше).

1 голос
/ 01 апреля 2010

извините за задержку, вы могли бы сделать что-то вроде.

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