stringtranslate.com

Atributo de plantilla Idioma

El lenguaje de atributos de plantilla (TAL) es un lenguaje de plantillas que se utiliza para generar páginas HTML y XML dinámicas . Su objetivo principal es simplificar la colaboración entre programadores y diseñadores. Esto se logra incorporando declaraciones TAL dentro de etiquetas HTML (o XML) válidas, en las que luego se puede trabajar utilizando herramientas de diseño comunes.

TAL fue creado para Zope pero también se utiliza en otros proyectos basados ​​en Python .

Atributos

Se utilizan los siguientes atributos, normalmente prefijados con " tal:":

definir
Crea variables locales, válidas en el elemento que lleva el atributo (incluidos los elementos contenidos)
condición
decide si se debe representar o no la etiqueta (y todo el texto que contiene)
repetir
Crea una variable de bucle y repite la etiqueta iterando una secuencia, por ejemplo, para crear una lista de selección o una tabla.
contenido
reemplaza el contenido de la etiqueta
reemplazar
reemplaza la etiqueta (y por lo tanto no se puede utilizar junto con contenido o atributos)
atributos
reemplaza los atributos dados (por ejemplo, al usar tal:attributes="name name; id name"los atributos de nombre e id de un campo de entrada se podría establecer el valor de la variable " name")
omitir etiqueta
permite omitir la etiqueta de inicio y fin y solo representar el contenido si la expresión dada es verdadera.
en caso de error
Si ocurre un error, este atributo funciona como la etiqueta de contenido.

Si una etiqueta tiene más de un atributo TAL, se evalúan en el orden anterior (bastante lógico).

En los casos en que no hay ninguna etiqueta que se preste para tomar los atributos, se pueden utilizar etiquetas TAL especiales, haciendo que el tal:prefijo " " sea opcional. Por ejemplo:

<tal:if condición= "contexto/lista de elementos" > ...</tal:si>

haría que el código dentro de las tal:ifetiquetas se use siempre que el contexto (cualquiera que sea la definición del contexto por parte del servidor de aplicaciones, por ejemplo, un objeto) contenga la variable " itemlist" con un valor verdadero , por ejemplo, una lista que contenga al menos un elemento. El identificador que sigue a los dos puntos es arbitrario; simplemente debe estar allí y ser el mismo para la etiqueta de apertura y de cierre.

METAL

El lenguaje de atributos de plantilla de expansión de macros (METAL) complementa a TAL y proporciona macros que permiten la reutilización de código en archivos de plantilla. Ambos fueron creados para Zope , pero también se utilizan en otros proyectos de Python .

METAL complementa a TAL con la capacidad de reutilizar código. Permite al desarrollador definir y utilizar macros, que a su vez pueden tener espacios ; al utilizar una macro, se puede especificar contenido variacional para un espacio.

Al generar documentos XML , se debe especificar el espacio de nombres XML ( xmlns:metal="http://xml.zope.org/namespaces/metal").

Atributos del METAL

Se reconocen los siguientes atributos, que normalmente requieren el metal:prefijo " ":

definir-macro
crea una macro
definir ranura
Crea una ranura dentro de una macro.
usar macro
utiliza una macro (normalmente proporcionada a través de una expresión de ruta TALES)
ranura de llenado
Al usar una macro, reemplaza el contenido predeterminado de la ranura indicada.
macro extendida
desde Zope v3: extiende una macro, comparable a la subclasificación , mediante la redefinición de ranuras

Normalmente sólo se utiliza uno de ellos a la vez.

En los casos en los que no hay ninguna etiqueta que se preste a tomar los atributos, y en casos especiales en los que se necesita más de un atributo METAL, se pueden usar etiquetas METAL especiales, haciendo que el prefijo "metal:" sea opcional. Por ejemplo (dibujado teniendo en cuenta Roundup ):

 < html  metal:define-macro = "glaseado" > ... < metal:myslot  define-slot = "formulario-opcional" > ... </html>  < html  metal:use-macro = "plantillas/página/macros/glaseado" >  < form  metal:fill-slot = "formulario-opcional"  action = "."  tal:attributes = "contexto/designador de la acción" > ... </form> </html> 

Uso

TAL/TALES/METAL se utilizan en los siguientes proyectos:

Otras implementaciones

Además de la implementación original de Zope , existen (no exhaustivamente):

Pitón

DO#

Ir (Golang)

JavaScript

Java

Perl

Raku

PHP

XSL

Ceceo común

Implementaciones similares

Referencias

Enlaces externos