tutorial examples bootstrap django django-templates

examples - ¿Cómo usar la etiqueta de plantilla de Django dentro de otra etiqueta?



href django (1)

Tengo un sitio web de Django que intento internacionalizar. Los archivos de imagen están codificados con el código de idioma de dos letras. Por lo tanto, cuando un usuario cambia el idioma, las referencias a los archivos de imagen se actualizan con el código de idioma en plantillas de la siguiente manera:

<img src="{% static ''website/images/contact_us_{{ LANGUAGE_CODE }}.png'' %}">

El problema es que también tengo que tener una etiqueta para la ruta del contenido estático. ¿Cuál es una manera elegante de resolver esto?


Por sugerencia de PerMarAja, seguí su pregunta y solución aquí que era prácticamente idéntica a la mía. Estoy publicando lo que hice, por lo que quien aterrice en esta página tiene una solución. Durante mi investigación, no me topé con la publicación de @ MarAja.

El código es una copia exacta, y la opción de no usar add etiqueta se debe a que, de acuerdo con la documentación de Django, intenta convertir los argumentos a un int; es decir, no destinado a cadenas.

Código completo:

# Custom Template tag file named "custom_app_tags.py" from django import template register = template.Library() @register.filter def addstr(s1, s2): return str(s1) + str(s2)

Por último, uso:

{% load staticfiles %} {% load i18n %} {% get_current_language as LANGUAGE_CODE %} {% load custom_app_tags %} <img src="{% static ''website/images/contact_us_''|addstr:LANGUAGE_CODE|addstr:''.png'' %}">

Tenga en cuenta que incluí todo para que cualquiera que llegue más tarde se haga una idea completa de lo que está sucediendo.