Составители:
Рубрика:
26
основе готовых каркасов DIYPloneStyle, MySkin, SimplePloneStyle.
Использование этих продуктов позволяет разрабатывать полностью
свой дизайн, отличный от основного каркаса Plone.
Шаблоны. Шаблоны страницы являются инструментом для гене-
рации веб страниц. Целью шаблонов страниц является естественный
процесс публикации. Дизайнер, используя WYSIWYG HTML редак-
тор, создает шаблон, программист редактирует его и делает частью
приложения. Если требуется, дизайнер может загрузить шаблон об-
ратно
в свой редактор и продолжить изменения в его структуре и
внешнем обличие. Не трогая изменений сделанных программистом, он
не сможет нарушить работу приложения.
Шаблоны страниц должны удовлетворять трем основным прави-
лам:
1. Хорошее согласование с инструментами редактирования.
2. Что вы видите, то вы и получаете.
3. Хранение кода отдельно от шаблона
, за исключением
структурной логики.
Zope поставляется с двумя системами шаблонов DTML и ZPT (Zope
Page Templates). DTML считается устаревающей и в дальнейшем под-
держиваться не будет.
Шаблоны страниц используют Template Attribute Language (TAL) -
язык описания атрибутов, заключающийся в добавлении специальных
атрибутов в тэг.
Для примера, заголовок динамической странице выглядит подобно
этому:
<title tal:content="here/title">Page Title</title>
Здесь
tal:content атрибут является оператором TAL. Он имеет
XML пространство имен (часть tal:), большинство инструментов
редактирования не считают его ошибочным потому что не знают его,
и соответственно не удаляют этот атрибут. Этот атрибут не изменяет
структуру или внешний вид шаблона при загрузке его в WYSIWYG
редактор или в веб браузер. Имя content указывает на то что данный
27
атрибут устанавливает содержимое тэга title и его значение
"here/title" является выражением, предоставляющим текст для вставки
внутрь тэга.
Когда эти шаблоны сохраняются в Zope и просматриваются поль-
зователем, Zope превращает этот статический контент в динамический
и заменяет "Page Title" каким-либо найденным значением "here/title". В
данном случае "here/title" принимает значение title объекта, который
обращается к данному шаблону. Эта замена происходит динамически,
когда шаблон становиться представлением.
Этот пример также демонстрирует второй принцип. Когда вы види-
те шаблон в редакторе, текст заголовка работает как заменитель дина-
мического текста заголовка. Этот шаблон представляет собой пример
генерации документов.
Рисунок 14. Создание шаблона.
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »