Según The Django Book, sistema de plantillas de Django soporta operaciones de búsqueda de puntos anidados:operaciones de búsqueda de puntos anidadas en Django plantillas
búsquedas de Dot se pueden anidar varios niveles de profundidad. Por ejemplo, el siguiente ejemplo usa {{person.name.upper}}, que se traduce en una búsqueda de diccionario (person ['name']), luego una llamada a método (upper()): '{{person.name.upper }} es {{person.age}} años de edad. '
¿Hay goblins con este enfoque no ampliamente cubierto en la documentación? Estoy teniendo problemas con las búsquedas de puntos anidados - aquí hay un ejemplo mínimo:
views.py:
test = [{'foo': [1, 2, 3], 'bar': [4, 5, 6]}, {'baz': [7, 8, 9]}]
ndx = 'bar'
t = loader.get_template('meh.html')
c = Context({'test': test,
'ndx': ndx,})
return HttpResponse(t.render(c))
plantilla meh.html:
<pre>
{{ test }}
{{ test.0 }}
{{ test.0.ndx }}
</pre>
resultante HTML:
<pre>
[{'foo': [1, 2, 3], 'bar': [4, 5, 6]}, {'baz': [7, 8, 9]}]
{'foo': [1, 2, 3], 'bar': [4, 5, 6]}
</pre>
La búsqueda anidada de una clave de diccionario dentro de un elemento de lista no devuelve nada, cuando espero [4, 5, 6].
J.J.
Como Goblin, estoy profundamente ofendido por esta caracterización de toda una raza ... ;-) – cethegeek