Repeat
Repeat
Syntax:
argument ::= variable_name expression
variable_name ::= Name
Soll für jeden Eintrag einer Liste ein Unterbaum des Dokuments
repliziert werden, verwenden wir ‘repeat’. Der in
‘repeat’ verwendete Ausdruck sollte als Wert eine
Liste haben. Ist die Liste leer, wird das Anweisungselement
entfernt, andernfalls wird es für jeden Wert in der Liste
wiederholt. Wird die Ausführung abgebrochen, bleibt das Element
unverändert und es werden keine neuen Variablen deklariert.
Die Variable ‘variable_name’ wird dazu verwendet,
eine lokale Variable und eine Schleifenvariable zu deklarieren.
Für jeden Schleifendurchlauf wird die lokale Variable auf das
aktuelle Listenelement gesetzt, die Schleifenvariable ist ein
Iterationsobjekt. Iterationsobjekte werden dazu verwendet,
Zugriff auf Informationen über den gegenwärtigen
Schleifendurchlauf zu haben (so wie den aktuellen Index).
Iterationsobjekte werden genauer in http://www.zope.org//Wikis/DevSite/Projects/ZPT/TAL
Specification 1.4 - TALES beschrieben. Die Schleifenvariable
hat genau den selben Namen wie die lokale Variable, aber auf sie
kann nur über die Standardvariable ‘repeat’ zugegriffen werden
(näheres unter RepeatVariable ).
Beispiele:
<p tal:repeat=“txt python:’eins’, ’zwei’,
‘drei’”>
<span tal:replace=”txt” />
</p>
<table>
<tr tal:repeat=”posten here/cart”>
<td
tal:content=”repeat/posten/index”>1</td>
<td tal:content=”posten/beschreibung”>Ein
Ding</td>
<td tal:content=”posten/preis”>EUR
1.50</td>
</tr>
</table>






