TALES

TAL Expression Syntax (TALES) – standard definiowania wyrażeń dla języków TAL (Template Attribute Language) i METAL (Macro Extension for TAL). TALES definiuje sześć typów wyrażeń:

  • exists – do sprawdzania czy obiekt istnieje
  • nocall
  • not
  • path
  • python
  • string

Domyślnym typem jest path, dlatego w przypadku braku określenia typu, Zope potraktuje je jako wyrażenie tego właśnie typu. Jeśli istnieje konieczność umieszczenia kilku wyrażeń, to kolejne z nich oddziela się dwukropkiem. Oprócz tego TALES określa również listę słów kluczowych:

  • attrs
  • container – reprezentuje folder, w którym znajduje się plik szablonu ZPT (Zope Page Template)
  • default
  • here
  • modules
  • nothing – reprezentuje zero (0), pusty ciąg znaków lub zmienną niezainicjowaną żadną wartością
  • options
  • repeat
  • request
  • root
  • template – reprezentuje nazwę pliku szablonu ZPT
  • user – nazwa obecnie zalogowanego użytkownika
exists
Wyrażenia typu exists sprawdzają czy dany obiekt istnieje. Obiektem może być plik, zmienna lub własność szablonu ZPT. W przypadku zmiennych oraz własności szablonów, dana cecha nie musi posiadać konkretnej wartości, aby wyrażenie zwróciło TRUE. Wyrażenia tego typu najczęściej używane są w instrukcjach warunkowych tal:condition.
<p tal:condition="exists:template/title">Tekst z obu paragrafów zostanie wyświetlony,</p>
<p tal:condition="exists:template/id">ponieważ każdy szablon posiada własność tytuł oraz id.</p>
nocall
Wyrażenia typu nocall umożliwiają dotarcie do atrybutów danego pliku.
<span tal:define="doc nocall:here/exists.zpt" 
     tal:content="string:${doc/getId} - ${doc/title}">id – tytuł</span>

Zawartość tagu <span> zostanie wypełniona wartościami atrybutów id oraz title pliku exists.zpt znajdującego się w tym samym katalogu co plik szablonu zawierający powyższy wpis. Zarówno w przypadku dodania słowa nocall jak i wtedy gdy go nie ma, sama zmienna doc jest definiowana jako ciąg znaków będących zawartością pliku exists.zpt. Natomiast dzięki nocall istnieje możliwość odczytania wartości atrybutów id oraz title tego pliku. W przypadku plików będących skryptami lub metodami nocall pozwala pobierać wartości zmiennych tamże zdefiniowanych.

not
Wyrażenia not używa się do zaprzeczenia ciągu występującego po nim. Zope sprowadza sekwencję po wyrażeniu not do wartości logicznej TRUE lub FALSE, a następnie ją neguje. Jeżeli nie jest możliwe sprowadzenie wyrażenia do wartości logicznych, to zostaje zwrócone ostrzeżenie o błędzie. Błąd wystąpi również wtedy, gdy po słowie not nie wystąpi żadne wyrażenie. Zasady sprowadzania wyrażeń do wartości logicznych:
  • liczba zero to FALSE
  • liczby dodatnie i ujemne to TRUE
  • pusty ciąg znaków to FALSE
  • nieistniejące pliki, obiekty lub ich właściwości to FALSE
path
Wyrażenia typu path są domyślnym typem wyrażeń instrukcji TAL. Wyrażenia tego typu składają się z ciągów znaków oddzielonych od siebie znakami prawego ukośnika (/). Pierwsze słowo w ścieżce powinno być jednym ze słów kluczowych lub zmienną zdefiniowaną przez użytkownika. Wyrażenia na ścieżce mogą zawierać litery, cyfry, spacje oraz kropki, przecinki, myślniki, znaki podkreślenia i tyldy.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.