Flask-Babel cómo usar la traducción en el archivo de plantilla Jinja

En mi aplicación Flask, en el archivo main.py, definí:

from flaskext.babel import gettext .... def somefun(): return render_template('some.html', messages=messages) 

en el archivo de plantilla some.html, utilicé:

  

Esto da un error:

  UndefinedError: 'gettext' is undefined 

¿Cómo importar esta función para uso de plantilla?

Desafortunadamente, esto no está documentado en absoluto, pero Flask-Babel está utilizando de forma transparente la extensión i18n de Jinja2 . Esto significa que, de forma predeterminada, están disponibles las siguientes funciones para las expresiones: gettext , ngettext y _ .

También hay posibilidad de usar tags de plantilla:

 {% trans %}foo{% endtrans%} {% trans num %} There is {{ num }} object. {% pluralize %} There are {{ num }} objects. {% endtrans %} 

Y el informe de error sobre documentos faltantes que está esperando los parches;)