2011-01-19 24 views

Respuesta

49

Gracias a todos por su ayuda, lleva a m e al darse cuenta de que puedo usar el with tag.

{% with list|last as last %} 
    {{ last.key }} 
{% endwith %} 
+0

También funciona con slice si desea algo más que el último elemento: '{% con list | slice:": - 2 "como my_var%}' – Jake

+3

Error: No se admite la indexación negativa. Django v.1.7 –

+0

funciona en jinja2? –

1
+0

¿Hay una manera de tomar el resultado de la rebanada y obtener una clave? – Jake

+0

¡Ah, ja! Sí, la hay, ¡con la etiqueta! – Jake

-3

Utilice este fragmento de código en su plantilla:

{{ list|slice:":-1".items.0.0 }} 
+2

'{{list | slice:": - 1 ".key}}' '=>' No se pudo analizar el resto: '.key' from 'list | slice: ": - 1" .key'' – Jake

+0

Usa el código de respuesta modificada. – ikostia

+1

No se pudo analizar el resto: '.items.0.0' de 'list | slice: ": - 1" .items.0.0' – Jake

23

utilizar la etiqueta last plantilla:

{{ value|last }} 

If value is the list ['a', 'b', 'c', 'd'] , the output will be the string "d" .

+1

'{{list | last.key}}' '=>' No se pudo analizar el resto: '.key' from 'list | last.key'' – Jake

+1

Pasé una tremenda media hora buscando esto. ¡Gracias! Para tu información, esta parece ser la única forma de obtener el último elemento de un objeto xrange en Python 2. Los filtros 'make_list' y' slice' y todas sus combinaciones fallan por diferentes razones. – makaveli

5

En mi caso me parece esta solución: {{object_list.last.id}} muy útiles en la expresión de la siguiente manera: {% url 'my-url' object_list.first.id object_list.last.id %}

0

sin con, será:

{% set last = list|last %} 
{{ last.key }} 
Cuestiones relacionadas