词条 | Template Attribute Language |
释义 |
}} The Template Attribute Language (TAL) is a templating language used to generate dynamic HTML and XML pages. Its main goal is to simplify the collaboration between programmers and designers. This is achieved by embedding TAL statements inside valid HTML (or XML) tags which can then be worked on using common design tools. TAL was created for Zope but is used in other Python-based projects as well. AttributesThe following attributes are used, normally prefixed by "
creates local variables, valid in the element bearing the attribute (including contained elements)
decides whether or not to render the tag (and all contained text)
creates a loop variable and repeats the tag iterating a sequence, e.g. for creating a selection list or a table
replaces the content of the tag
replaces the tag (and therefore is not usable together with content or attributes)
replaces the given attributes (e. g. by using
allows to omit the start and end tag and only render the content if the given expression is true.
if an error occurs, this attribute works like the content tag. If a tag has more than one TAL attributes, they are evaluated in the above (fairly logical) order. In cases when no tag is present which lends itself to take the attributes, special TAL tags can be used, making the " would cause the code inside the METALThe Macro Expansion Template Attribute Language (METAL) complements TAL, providing macros which allow the reuse of code across template files. Both were created for Zope but are used in other Python projects as well. METAL complements TAL with the ability to reuse code. It allows the developer to define and use macros, which in turn may have slots; when using a macro, variational content can be specified for a slot. When generating XML documents, the XML namespace must be specified ( METAL AttributesThe following attributes are recognised, normally requiring a „
creates a macro
creates a slot inside a macro
uses a macro (normally given via a TALES path expression)
when using a macro, replaces the default content of the given slot
since Zope v3: extends a macro, comparable to subclassing, by redefining of slots Normally, just one of those is used at a time. In cases when no tag is present which lends itself to take the attributes, and in special cases when more than one METAL attribute is needed, special METAL tags can be used, making the „metal:“ prefix optional. E. g. (sketched with Roundup in mind): UsageTAL/TALES/METAL are used by the following projects:
Other implementationsBesides the original Zope implementation, there are (not exhaustive): Python
C#
Go (Golang)
JavaScript
Java
Perl
Perl 6
PHP
XSL
Common Lisp
Similar implementations
ReferencesExternal links
2 : Zope|Template engines |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。