-
Notifications
You must be signed in to change notification settings - Fork 41
Advanced TALES syntax
Ben Peachey edited this page May 4, 2025
·
1 revision
TALES can't handle few cases that happen often and seem quite reasonable to do in templates.
It can't compare values:
<option tal:repeat="opt options" tal:attributes="selected php:opt == selected_option"/>
<title tal:condition="php:count(allimages)==1">Photo</title>
<title tal:condition="php:count(allimages) GT 1">${php:count(allimages)} photos</title>
It doesn't have logic expressions:
<div tal:condition="php:canShowFoo AND foo.isAvailable()">
It can't compute values conditionally:
<tr tal:repeat="row rows" tal:attributes="class php:repeat.row.odd ? 'odd' : 'even'"/>
It can't pass arguments to functions:
<h1 tal:content="php:substr(header, 0,100)"/>
<div tal:content="structure php:getAdvert(PAGE_TOP)">
FIXME