tools - https docs djangoproject com en 2.0 topics i18n
Etiquetas Django trans y url (1)
Usa {% blocktrans %}
. Los documentos de traducción de Django incluyen este ejemplo:
{% url path.to.view arg arg2 as the_url %}
{% blocktrans %}
This is a URL: {{ the_url }}
{% endblocktrans %}
Quiero traducir un párrafo que contenga una URL en una aplicación Django 1.3.
<p>
First <a href="{% url edit-profile username=user.username %}">edit your profile</a>, please.
</p>
Dependiendo del idioma, el texto rodeado por las etiquetas <a>
seguramente cambiará. ¿Cómo puedo permitir que los traductores decidan sobre la ubicación del enlace? Envolver todo en un {% trans %}
provoca un error:
<p>{% trans "First <a href=''{% url edit-profile username=user.username %}''>edit your profile</a>, please." %}</p>
El error arrojado es TemplateSyntaxError: Searching for value. Unexpected end of string in column 64: trans "First <a href=''{% url edit-profile username=user.username
TemplateSyntaxError: Searching for value. Unexpected end of string in column 64: trans "First <a href=''{% url edit-profile username=user.username
.
¿Cómo debo hacer esto? ¿Debo determinar la URL en la vista y luego pasar esa URL como una cadena a la plantilla? Parece una solución complicada para lo que creo que es un problema muy común.