Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Template Attribute Language Expression Syntax – Wikipedia
Template Attribute Language Expression Syntax – Wikipedia
aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von TAL Expression Syntax)

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.

Überblick

[Bearbeiten | Quelltext bearbeiten]

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

[Bearbeiten | Quelltext bearbeiten]
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

[Bearbeiten | Quelltext bearbeiten]
nothing
ein „Nicht-Wert“, der keine Zeichenkette sein darf, z. B. None (Programmiersprache 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

[Bearbeiten | Quelltext bearbeiten]

Einfacher Pfadausdruck zum Zugriff auf ein Makro

[Bearbeiten | Quelltext bearbeiten]
<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

[Bearbeiten | Quelltext bearbeiten]
<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

[Bearbeiten | Quelltext bearbeiten]
<div tal:define="view_ok context/is_view_ok">
<tal:if condition="view_ok">
 ...
</tal:if>
<tal:else condition="not:view_ok">
 ...
</tal:else>
</div>

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

[Bearbeiten | Quelltext bearbeiten]
  • i18n TAL
  • Template Engine

Weblinks

[Bearbeiten | Quelltext bearbeiten]
  • TALES-Spezifikation, Version 1.3
  • Schleifenvariablen (Memento vom 9. September 2012 im Internet Archive)
  • TALES Overview (im Zope-Book)
  • TALES-Seite im Zope-3-Wiki (Memento vom 14. September 2011 im Internet Archive)
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Template_Attribute_Language_Expression_Syntax&oldid=236546966“
Kategorien:
  • Templatesprache
  • Python (Programmiersprache)

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id