zope.pagetemplate jest modułem, który zapewnia elegancki mechanizm szablonów, który osiąga czyste oddzielenie prezentacji i aplikacji logiki & nbsp; pozwalając projektantom pracę z szablonami w swoich wizualnych narzędzi do edycji (FrontPage, Dreamweaver, GoLive, itp).
Szczegółowe Dokumentacja
ZPT (Zope Page-Template) Architektura
Istnieje kilka głównych elementów składających się na architekturę strona matrycy:
- Kompilator TAL i tłumaczem. Jest odpowiedzialny za zebranie plików źródłowych i do wykonywania skompilowanych szablonów. Zobacz pakiet zope.tal aby uzyskać więcej informacji.
- Silnik wyrażenie jest odpowiedzialna za skompletowanie wyrażenia i do tworzenia kontekstu wykonanie wyraz. To jest wspólne dla aplikacji, aby zastąpić silniki ekspresji, aby zapewnić obsługę wyrażeń niestandardowych lub zmienić sposób, w jaki realizowane są wyrażenia. Pakiet zope.app.pagetemplate używa tego do wdrożenia oceny zaufanych i niezaufanych; Silnik używany jest inny dla każdej z różnych implementacji tego samego rodzaju ekspresji.
- Konteksty ekspresji wspierać realizację wyrażeń i zapewnić API do ustawiania zmiennych zakresów i ustawienie zmiennych. Konteksty ekspresji są przekazywane do tłumacza TAL w czasie wykonywania.
- Najczęściej używane jest wyrażenie, że wdrożenie znaleźć w zope.tales.
- Szablony stron tie wszystko razem. Montaż one silnik wyrażeń z tłumacza TAL i zgrać zarządzanie źródła i skompilowanych danych szablonu. Zobacz zope.pagetemplate.interfaces.
Strona Szablony
Wprowadzenie
Strona Szablony zapewniają elegancki mechanizm szablonów, który osiąga czyste oddzielenie prezentacji i logiki aplikacji, pozwalając jednocześnie na projektantów do pracy z szablonami w swoich wizualnych narzędzi do edycji (FrontPage, Dreamweaver, GoLive, itp).
Niniejszy dokument koncentruje się na wykorzystaniu szablonów stron spoza kontekście Zope, nie wyjaśnia, jak napisać szablonów stron, jak istnieje kilka zasobów w sieci, które zrobić.
Proste Wykorzystanie
Korzystanie z szablonów stron poza Zope3 jest bardzo łatwe i proste. Krótki przykład:
>>> Z importu PageTemplateFile zope.pagetemplate.pagetemplatefile
>>> My_pt = PageTemplateFile ("hello_world.pt")
>>> My_pt ()
u "
PageTemplates instacji
Powiedzmy, że chcemy zmienić szablonów stron takich, które pojawiają się argumenty słów kluczowych elementów najwyższego poziomu w przestrzeni nazw. Możemy podklasy PageTemplate i zmienić domyślne zachowanie pt_getContext (), aby dodać je do:
z zope.pagetemplate.pagetemplate importu PageTemplate
Klasa mypt (PageTemplate):
& Nbsp; def pt_getContext (self, args = (), opcje = {}, ** kw):
& Nbsp; rval = PageTemplate.pt_getContext (self, args = args)
& Nbsp; options.update (rval)
& nbsp; return opcje
class foo:
& nbsp; def getContents (self): return "hi"
Więc teraz możemy powiązać obiekty w bardziej arbitralny, jak następuje:
template = "" "
Tutaj
"" "
pt = mypt ()
pt.write (szablon)
pt (das_object = foo ())
Zobacz interfaces.py
Co nowego w tym wydaniu:.
- Zastąpiony przestarzałe zope.interface.classProvides Wykorzystanie o równoważnym Zope .interface.provider dekorator.
- Zastąpiony przestarzałe zope.interface.implements Wykorzystanie o równoważnym zope.interface.implementer dekoratora.
- Usunięto wsparcie dla Pythona 2.4 i 2.5.
- PageTemplate.pt_render () ma nowy argument check_macro_expansion, zalegających na True.
- PageTemplateTracebackSupplement przechodzi check_macro_expansion = False, aby uniknąć PR # 732972.
Co nowego w wersji 3.6.3:
- twierdzenia Naprawiono testowe być zgodne z zope.tal 3.6.
Co nowego w wersji 3.6.1:.
- Naprawiono problem z brakujących wartości domyślnych dla strictinsert
Co nowego w wersji 3.6.0 :
- na podstawie list-
Zastąpiony StringIO klasy strumienia z szybciej wdrożenie.
- Streszczenie się silnik i programowe interfejsy pozwalają na wymianę szablonów i realizacji za pośrednictwem rejestracji użytkowego.
- Usunięto z plików starożytnej autorskich badań (LP: # 607228)
Wymagania :
- Python
Komentarze nie znaleziono