Django Template Engine proporciona filtros que se utilizan para transformar los valores de variables y argumentos de etiquetas. Ya hemos discutido las principales etiquetas de plantilla de Django . Las etiquetas no pueden modificar el valor de una variable, mientras que los filtros se pueden usar para incrementar el valor de una variable o modificarla según las necesidades propias.
Sintaxis
{{ variable_name | filter_name }}
Los filtros se pueden «enstringr». La salida de un filtro se aplica al siguiente. {{ text|escape|linebreaks }}
es un modismo común para escapar del contenido del texto y luego convertir los saltos de línea en etiquetas <p>.
Ejemplo
{{ value | length }}
Si el valor es [‘a’, ‘b’, ‘c’, ‘d’] , la salida será 4 .
Principales filtros de plantilla en Django
Este artículo gira en torno a varios filtros de plantilla de Django que se pueden usar durante un proyecto. Los filtros transforman los valores de las variables y los argumentos de las etiquetas. Veamos algunos filtros principales.
-
agregar
Se utiliza para agregar un argumento al valor.
Ejemplo{{ value | add:"2" }}
Si el valor es 4, entonces la salida será 6. Este filtro se usa para incrementar una variable en Django Templates .
-
agrega pestañas
Se utiliza para agregar barras antes de las comillas. Útil para escapar strings en CSV.
Ejemplo{{ value | addslashes }}
Si el valor es «Soy Jai», la salida será «Soy Jai».
-
capfirst
Se utiliza para poner en mayúscula el primer carácter del valor. Si el primer carácter no es una letra, este filtro no tiene efecto.
Ejemplo{{ value | capfirst }}
Si el valor es «jai», la salida será «Jai».
-
centro
Se utiliza para centrar el valor en un campo de un ancho determinado.
Ejemplo"{{ value | center:"15" }}"
Si el valor es «Jai», la salida será «Jai».
-
Corte
Se utiliza para eliminar todos los valores de arg de la string dada.
Ejemplo
{{ value | cut:" " }}
Si el valor es «String con espacios», la salida será «String con espacios».
-
fecha
Se utiliza para dar formato a una fecha de acuerdo con el formato dado.
Ejemplo{{ value | date:"D d M Y" }}
Si el valor es un objeto de fecha y hora (p. ej., el resultado de datetime.datetime.now()), la salida será la string ‘Thu 06 Feb 2020’. Para más información y patrones visita aquí .
-
defecto
Se utiliza para dar un valor por defecto a una variable. Si la variable se evalúa como Falso, utilizará el argumento predeterminado dado, de lo contrario, el valor de la variable en sí.
Ejemplo
{{ value | default:"nothing" }}
Si el valor es «» (la string vacía), la salida será nada.
-
ordenar
Toma una lista de diccionarios y devuelve esa lista ordenada por la clave dada en el argumento.
Ejemplo{{ value | dictsort:"name" }}
Si el valor es:
[ {'name': 'zed', 'age': 19}, {'name': 'amy', 'age': 22}, {'name': 'joe', 'age': 31}, ]
entonces la salida seria:
[ {'name': 'amy', 'age': 22}, {'name': 'joe', 'age': 31}, {'name': 'zed', 'age': 19}, ]
-
Divisible por
Devuelve True si el valor es divisible por el argumento.
Ejemplo{{ value | divisibleby:"3" }}
Si el valor es 21, la salida sería True.
-
Escapar
Se utiliza para escapar del HTML de una string. Específicamente, hace estos reemplazos:
<
is
converted to <
> is converted to >
' (single quote) is converted to '
" (double quote) is converted to "
& is converted to &
Ejemplo
{{ title | escape }}
-
formato de archivo
Se utiliza para formatear el valor como un tamaño de archivo ‘legible por humanos’ (es decir, ’13 KB’, ‘4,1 MB’, ‘102 bytes’, etc.).
Ejemplo{{ value | filesizeformat }}
Si el valor es 123456789, la salida sería 117,7 MB.
-
primero
Se utiliza para devolver el primer elemento de una lista.
Ejemplo{{ value | first }}
Si el valor es la lista [‘a’, ‘b’, ‘c’], la salida será ‘a’.
-
unirse
Se usa para unir una lista con una string, como el ejemplo str.join(list) de Python
{{ value | join:" // " }}
Si el valor es la lista [‘a’, ‘b’, ‘c’], la salida será la string «a // b // c».
-
ultimo
Se utiliza para devolver el último elemento de una lista.
Ejemplo{{ value | last }}
Si el valor es la lista [‘a’, ‘b’, ‘c’, ‘d’], la salida será la string «d».
-
longitud
Se utiliza para devolver la longitud del valor. Esto funciona tanto para strings como para listas.
Ejemplo{{ value | length }}
Si el valor es [‘a’, ‘b’, ‘c’, ‘d’] o «abcd», la salida será 4.
-
Línea de números
Se utiliza para mostrar texto con números de línea.
Ejemplo{{ value | linenumbers }}
Si el valor es:
one two three
la salida será:
1. one 2. two 3. three
-
más bajo
Se utiliza para convertir una string en minúsculas.
Ejemplo{{ value | lower }}}
Si el valor es My Name is Jai , el resultado será my name is jai .
-
hacer_lista
Se utiliza para devolver el valor convertido en una lista. Para una string, es una lista de caracteres. Para un número entero, el argumento se convierte en una string antes de crear una lista.
Ejemplo{{ value | make_list }}
Si el valor es la string «Naveen», la salida sería la lista [‘N’, ‘a’, ‘v’, ‘e’, ’e’, ’n’]. Si el valor es 123, la salida será la lista [‘1’, ‘2’, ‘3’].
-
aleatorio
Se utiliza para devolver un elemento aleatorio de la lista dada.
Ejemplo{{ value | random }}
Si el valor es la lista [‘a’, ‘b’, ‘c’, ‘d’], la salida podría ser «b».
-
rodaja
Se utiliza para devolver una porción de la lista.
Ejemplo{{ some_list | slice:":2" }}
Si some_list es [‘a’, ‘b’, ‘c’], la salida será [‘a’, ‘b’].
-
slugificar
Se utiliza para convertir a ASCII. Convierte espacios en guiones y elimina caracteres que no son alfanuméricos, guiones bajos o guiones. Convierte a minúsculas. También elimina los espacios en blanco iniciales y finales.
Ejemplo{{ value | slugify }}
Si el valor es «Jai es una babosa», la salida será «jai-is-a-slug».
-
tiempo
Se utiliza para formatear una hora de acuerdo con el formato dado.
Ejemplo{{ value | time:"H:i" }}
Si el valor es equivalente a datetime.datetime.now() , la salida será la string “01:23” .
-
tiempo desde
Se utiliza para dar formato a una fecha como el tiempo transcurrido desde esa fecha (por ejemplo, «4 días, 6 horas»).
Ejemplo
{{ blog_date | timesince:comment_date }}
si blog_date es una instancia de fecha que representa la medianoche del 1 de junio de 2006, y comment_date es una instancia de fecha de las 08:00 del 1 de junio de 2006, lo siguiente devolvería “8 horas”
-
título
Se utiliza para convertir una string en título haciendo que las palabras comiencen con un carácter en mayúscula y los caracteres restantes en minúscula. Este filtro no hace ningún esfuerzo por mantener las «palabras triviales» en minúsculas.
Ejemplo
{{ value | title }}
Si el valor es «mi PRIMERA publicación», el resultado será «Mi primera publicación».
-
lista desordenada
Se utiliza para tomar recursivamente una lista anidada y devuelve una lista desordenada HTML, SIN abrir y cerrar etiquetas <ul>.
Ejemplo{{ var | unordered_list }}
si var contiene
['States', ['Kansas', ['Lawrence', 'Topeka'], 'Illinois']],
,{{ var|unordered_list }}
devolvería:<
li
>States
<
ul
>
<
li
>Kansas
<
ul
>
<
li
>Lawrence</
li
>
<
li
>Topeka</
li
>
</
ul
>
</
li
>
<
li
>Illinois</
li
>
</
ul
>
</
li
>
</
li
>
-
superior
Se utiliza para convertir una string en mayúsculas.
Ejemplo{{ value | upper }}
Si el valor es «Jai is a slug», la salida será «JAI IS A SLUG».
-
el recuento de palabras
Se utiliza para devolver el número de palabras.
Ejemplo{{ value | wordcount }}
Si el valor es «jai es una babosa», la salida será 4.
Publicación traducida automáticamente
Artículo escrito por NaveenArora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA