[ZPT] CVS: Releases/Zope/lib/python/Products/PageTemplates/help - tal-repeat.stx:1.6
Evan Simpson
evan@zope.com
Thu, 13 Dec 2001 15:18:52 -0500
Update of /cvs-repository/Releases/Zope/lib/python/Products/PageTemplates/help
In directory cvs.zope.org:/tmp/cvs-serv18549/help
Modified Files:
tal-repeat.stx
Log Message:
Fix first() and last() to work with Zope security, document them.
=== Releases/Zope/lib/python/Products/PageTemplates/help/tal-repeat.stx 1.5 => 1.6 ===
o *end* - true for the ending, or final, repetition.
+ o *first* - true for the first item in a group - see note below
+
+ o *last* - true for the last item in a group - see note below
+
o *length* - length of the sequence, which will be the total number
of repetitions.
@@ -65,6 +69,15 @@
attribute access to get the information, for example,
'python:repeat['item'].start'.
+ Note that 'first' and 'last' are intended for use with sorted
+ sequences. They try to divide the sequence into group of items
+ with the same value. If you provide a path, then the value
+ obtained by following that path from a sequence item is used for
+ grouping, otherwise the value of the item is used. You can
+ provide the path by passing it as a parameter, as in
+ "python:repeat['item'].first('color')", or by appending it to the
+ path from the repeat variable, as in "repeat/item/first/color".
+
Examples
Iterating over a sequence of strings::
@@ -94,5 +107,14 @@
z python:x*y"
tal:replace="string:$x * $y = $z">1 * 1 = 1</span>
</td>
+ </tr>
+ </table>
+
+ Objects (already sorted by meta-type) in groups by meta-type::
+
+ <table border="1">
+ <tr tal:repeat="object objects">
+ <td><span tal:condition="repeat/object/first/meta_type"
+ tal:replace="object/meta_type">Meta Type</span></td>
</tr>
</table>