SELECTION   Этот шаблон породит следующий результат:     0 1 2 3 4 5 6 7 8 9     Здесь нужно обратить внимание на два основных момента:   · в шаблоне можно использовать выраженияPython (в данном примере переменная s определена как модульPyth">lt;li tal:define="s modules/string" tal:repeat="el python:s.digits"> 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

lt;li tal:define="s modules/string" tal:repeat="el python:s.digits">

Поиск

<ul>

 

<li tal:define="s modules/string" tal:repeat="el python:s.digits">

<a href="DUMMY"

tal:attributes="href string:/digit/$el" tal:content="el">SELECTION</a>

</li>

</ul>

 

Этот шаблон породит следующий результат:

 

<ul>

 

<li><a href="/digit/0">0</a></li> <li><a href="/digit/1">1</a></li> <li><a href="/digit/2">2</a></li> <li><a href="/digit/3">3</a></li> <li><a href="/digit/4">4</a></li> <li><a href="/digit/5">5</a></li> <li><a href="/digit/6">6</a></li> <li><a href="/digit/7">7</a></li> <li><a href="/digit/8">8</a></li> <li><a href="/digit/9">9</a></li>

 

</ul>

 

Здесь нужно обратить внимание на два основных момента:

 

· в шаблоне можно использовать выраженияPython (в данном примере переменная s определена как модульPython)и переменную-счетчик цикла el,которая проходит итерации по строке string.digits.

· с помощьюTALможно задавать не только содержимое элемента,но и атрибута тега(в данном примере использовался атрибут href).

 

Детали можно узнать по документации.Стоит лишь заметить,что итерация может происходить по самым разным источникам данных:содержимому текущей папки,выборке из базы данных или,как в приведенном примере,по объектуPython.

 

Любой программист знает,что программирование тем эффективнее,чем лучше удалось"расставить скобки", выведя "общий множитель за скобки". Другими словами, хорошие программисты должны быть достаточно"ленивы",чтобы найти оптимальную декомпозицию решаемой задачи.При проектировании динамическогоweb-сайтаZopeпозволяет разместить"множители"и"скобки"так,чтобы достигнуть максимального повторного


 


использования кода(как разметки,так и сценариев).Помогает этому уникальный подход к построению взаимоотношений между объектами:заимствование(acquisition).

 

Пусть некоторый объект(документ,изображение,сценарий,подключение к базе данных и т.п.)расположен в папкеExample.Теперь объекты этой папки доступны по имени из любых нижележащих папок.Даже политики безопасности заимствуются более глубоко вложенными папками от папок,которые ближе к корню.Заимствование является очень важной концепциейZope,без понимания которойZopeсложно грамотно применять,и наоборот,ее понимание позволяет экономить силы и время,повторно используя объекты в разработке.

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 63; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.008 с.)