Составители:
Рубрика:
28
Есть команды шаблона для замены всего тэга, его содержимого или
некоторых его атрибутов. Вы можете повторить тэг несколько раз или
полностью опустить его. Вы можете соединять часть нескольких шаб-
лонов вместе и определить простую обработку ошибок. Все эти осо-
бенности используются для генерации структурированных докумен-
тов. Вы не можете создавать подпрограммы
или классы, писать циклы
или множественные проверки условий, или просто вычислять сложные
алгоритмы. Для этих задач, вы должны использовать Python.
Этот язык шаблонов не является самостоятельным языком про-
граммирования. Он основывается на использовании внутри каркасов
программирования (framework)(таких как Zope), в которых другие
объекты обрабатывают бизнес логику и задачи, не имеющие отноше-
ния
к разметке страницы.
Для создания действующего шаблона, его желательно, поместить в
custom и вставить объект Page Template.
После создания объекта Вы получите почти пустую страницу.
Рисунок 15. Стандартная страница шаблона.
29
Элементы TAL
Вставка текста
Для того чтобы разместить динамический текста внутри другого
текста, используйте
tal:replace оператор в тэге span. Добавьте
следующие строки в ваш шаблон:
<br>
The URL is <span tal:replace="request/URL">URL</span>.
Тэг span является структурным и не отображается визуально, в ре-
зультате вы видите нечто подобное "The URL is URL.", когда просмат-
риваете представление вашего исходника редакторе или в браузере.
Когда вы просматриваете визуализированную (обработанную) версию
шаблона, он выглядит подобно следующему:
<br>
The URL is http://localhost:8080/TestTemplate.
Помните, что когда вы размещаете tal:replace не в тэг span а в
тэги форматирования такие как
b или font, эти тэги также заменяются
на результат вычисления оператора, т.е. они будут отсутствовать в
тексте конечной страницы.
Если вы хотите поместить текст внутрь тэга, оставив сам тэг нетро-
нутым, вы должны использовать оператор
tal:content. Для уста-
новки заголовка вашей страницы примера в тэг
title, добавьте сле-
дующие строки:
<head>
<title tal:content="template/title">The Title</title>
</head>
Если вы откроете вкладку
Test в новом окне, в заголовке страницы
появится «Тестируем шаблон».
Повторяющиеся структуры
Оператор tal:repeat "повторить эту строку для каждого элемен-
та содержащую список свойств объекта". Ниже представлена таблица,
которая имеет номер строки для каждого объекта, и столбцы с
id,
meta-type и title.
<table border="1" width="100%">
<tr>
Страницы
- « первая
- ‹ предыдущая
- …
- 13
- 14
- 15
- 16
- 17
- …
- следующая ›
- последняя »