TALES

TALES

Die Template Attribute Language Expression Syntax (TALES) beschreibt die Syntax für die Auswertung der von der Template Attribute Language (TAL) und Macro Expansion Template Attribute Language (METAL) für Attributwerte verwendeten Ausdrücke. Die Möglichkeit, hierfür eine andere Syntax als TALES zu verwenden, ist ausdrücklich vorgesehen; in der Regel wird TALES jedoch nicht ersetzt, sondern erweitert.

Der Webanwendungsserver Zope erweitert die TALES-Spezifikation im Rahmen der Zope Page Templates.

Inhaltsverzeichnis

Überblick

TALES stellt mehrere Methoden zur Verfügung, Ausdrücke zu formulieren, die in TAL- und METAL-Attributen verwendet werden können und durch ein (optionales) Präfix unterschieden werden:

Ausdrucksarten

Pfadausdruck
Präfix path: (optional, und deshalb fast immer fortgelassen): zum Zugriff auf strukturierte Variablen, Dateisystemobjekte, Makros (METAL) usw.
Stringausdruck
Präfix string:; erlaubt Pfadausdrücke in ${...}
Logische Negation
Präfix not:; wertet den restlichen Ausdruck aus und gibt seine logische Negation zurück
Python-Ausdruck
Präfix python:; wenn implementiert, gibt den Wert des folgenden Python-Ausdrucks zurück. Dies findet üblicherweise nur Anwendung, wenn Pfadausdrücke nicht ausreichen, z. B. wenn eine Funktion mit bestimmten Argumenten aufgerufen werden muss.
Unterdrückung des Quotings
Das vorangestellte Schlüsselwort structure (ohne Doppelpunkt) unterdrückt das sonst automatisch angewendete HTML-Quoting, um beispielsweise ein komplettes HTML-Element zu erzeugen.

Eingebaute Namen

nothing
ein „Nicht-Wert“, der keine Zeichenkette sein darf, z. B. None (Python), void, Nil, oder NULL.
options
die (benannten) Argumente, die dem Template übergeben wurden
repeat
zum Zugriff auf Schleifenvariablen wie index, number usw.

Diese Namen werden üblicherweise noch um weitere ergänzt, siehe Zope Page Templates.

Beispiele

Einfacher Pfadausdruck zum Zugriff auf ein Makro

<metal:form use-macro="location/page/MACROS/myform"/>

Hier sei beispielsweise location das Verzeichnis, das eine Vorlagendatei page enthält, in der wiederum das Makro myform definiert wurde. In Zope Page Templates würde hier anstelle von location z. B. here (als Ausgangspunkt der Akquisition zur Suche nach page) oder container stehen.

Schleife mit Pfad-, Python- und Stringausdrücken

<tr tal:repeat="item python:({'key': 'eins'}, {'key': 'zwei'})">
  <td tal:content="repeat/item/number">99</td>
  <td tal:content="string:Zeile ${item/key}">Zeile 99</td>
</tr>

Ausgabe:

<tr>
  <td>1</td>
  <td>Zeile eins</td>
</tr>
<tr>
  <td>2</td>
  <td>Zeile zwei</td>
</tr>

'Erläuterungen:

  • das tal:repeat-Attribut erzeugt eine Variable item und, mit Hilfe des Python-Ausdrucks, eine Sequenz von Dictionarys, die verwendet wird, um mehrere HTML-Tabellenzeilen zu erzeugen
  • die speziellen Schleifenvariablen (z. B. number) für item werden über die spezielle, vom TALES-Standard geforderte Variable repeat zur Verfügung gestellt
  • Pfadausdrücke können auch innerhalb von String-Ausdrücken verwendet werden

Logische Negation und TAL-Elemente

<tal:if condition="view_ok">
 ...
</tal:if>
<tal:else condition="not:view_ok">
 ...
</tal:else>

is_view_ok könnte hier eine Methode sein, die aus dem context aufgerufen wird und die Leseberechtigung des Benutzers überprüft. Im „Else-Zweig“ (der syntaktisch nichts anderes ist als der „If-Zweig“; if und else sind hier frei gewählte Namen, die sogar hätten gleich sein dürfen) wird die logische Bedingung des If-Zweigs umgekehrt, sodass nur einer der beiden ausgeführt wird.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Tales of — Tales of... est une série de jeu vidéo de rôle de Namco, dont les différents épisodes commencent tous par les mots « Tales of », et qui ont ensuite donné naissance à des dessins animés et mangas. Créée en 1995, la série compte désormais …   Wikipédia en Français

  • Tales of VS — (Versus) Éditeur Namco Bandai Développeur Namco Bandai Distributeur …   Wikipédia en Français

  • Tales of VS. — Tales of VS. Éditeur Namco Bandai Développeur Namco Bandai Date de sortie …   Wikipédia en Français

  • Tales DS — may refer to the following:* Tales of the Tempest, the first game in the Tales series to be released on the Nintendo DS. * Tales of Innocence, the second game in the Tales series to be released on the Nintendo DS. * Tales of Hearts, the third… …   Wikipedia

  • Tales — can refer to: *the plural of tale *Tales (series), a series of role playing games *Tales (album), an album by Marcus Miller *Tales of the Unexpected, an Anglia television series *Alternate title for the song Tales from the Forest of Gnomes from… …   Wikipedia

  • Tales — Ta les, n. [L., pl. of talis such (persons).] (Law) (a) pl. Persons added to a jury, commonly from those in or about the courthouse, to make up any deficiency in the number of jurors regularly summoned, being like, or such as, the latter. Blount …   The Collaborative International Dictionary of English

  • Tales — Vue générale …   Wikipédia en Français

  • tales — ta·les / tā ˌlēz/ n pl often attrib [from the Medieval Latin phrase tales de circumstantibus such (persons) of the bystanders; from the use of the phrase in the writ summoning them]: persons added to a jury from among those available in or about… …   Law dictionary

  • tales — tales·man; tales; …   English syllables

  • tales — [tā′lēz΄] pl.n. [ME < ML tales (de circumstantibus), such (of those standing about), phr. in writ summoning them < L, pl. of talis, such: see THAT] Law 1. people summoned to fill jury vacancies when the regular panel has become deficient in …   English World dictionary

  • Tales — Tales, teorema de …   Enciclopedia Universal

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”