Именно то, что написано: вызывайте gettext () для названий языков, когда вы их используете, или покажите их пользователю:
from django.utils.translation import ugettext
for lang_code, lang_name in settings.LANGUAGES:
translated_name = ugettext(lang_name)
...
(Обычно вы должны использовать ugettext, а не gettext, так как весь текст в Django является Unicode.)
Чтобы сделать эквивалент в шаблоне, просто используйте тег {% blocktrans%}, который просто вызывает ugettext за кулисами:
{% for lang in LANGUAGES %}
{% blocktrans %}{{ lang.1 }}{% endblocktrans %}
{% endfor %}