Translating text blocks with Django .. what to do with the HTML?

django

Solution

I would definitely use blocktrans. Sometimes its not possible to split i18n html text into different fragments. Blocktrans has some powerfull features:

{% url path.to.view arg arg2 as the_url %}

{% blocktrans with object.title as title and author|title as author_t %}

  {{author}}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
  Donec quam sem, sodales in fringilla nec, lacinia a lorem. 
  <a href="{{the_url}}">{{title}}</a> molestie ante.

{% endblocktrans %}

Have a look at:

- url template tag

- blocktrans template-tag

Problem

The title might not be clear, but I don't know how else to put it.. In the Django documentation it's pretty clear how to mark a text block for translation .. Take this example: ``` Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quam sem, sodales in fringilla nec, lacinia a lorem. Vivamus vel molestie ante. ``` So far so good. You just either use the trans or blocktrans tag. But now consider this: ``` Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quam sem, sodales in fringilla nec, lacinia a lorem. <a href="{% url some-view %}">Vivamus vel</a> molestie ante. ``` How should I deal with this ? Do I just wrap it in a block trans ? Edit: I think I've found out how it should be done .. ``` {% url some-view as some_view_url %} {% blocktrans %} Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quam sem, sodales in fringilla nec, lacinia a lorem. <a href="{{ some_view_url }}">Vivamus vel</a> molestie ante. {% endblocktrans %} ```

Original source