Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jinja2 translation of links

From a Jinja2 template, this is the rendered line I'm after (in English):

This is the <a href="roadmap.html">roadmap</a>

Translated in Dutch should result in:

Dit is de <a href="roadmap.html">planning</a>

This Jinja2 line gets me there -almost-

{{ _('This is the %(roadmap)s.', roadmap='<a href="roadmap.html">roadmap</a>'|safe) }}

Unfortunately, the word 'roadmap' is not translated.

What would be the Jinja2 way of accomplishing this? Splitting the link in roadmap1 and roadmap2? I hope for something more clever.

like image 298
kvdb Avatar asked Nov 13 '22 08:11

kvdb


1 Answers

These should work:

{{ _('This is the') }} <a href="roadmap.html">{{ _('roadmap') }}</a>

{{ _('This is the %(roadmap)s', roadmap=('<a href="roadmap.html">%s</a>' % _('roadmap'))|safe) }} 

Also, if you use webapp2, you might want to replace href="roadmap.html" with e.g. href="{{ uri_for('roadmap') }}"

like image 177
alex Avatar answered Dec 11 '22 16:12

alex