РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
520 of 643 menu

Функция pgettext

Функция pgettext применяется для перевода строки с учётом контекста. Это полезно, когда одно и то же слово в разных ситуациях должно переводиться по-разному. Первым параметром передаётся контекст, вторым - сама строка для перевода. Функция возвращает переведённую строку с учётом указанного контекста.

Синтаксис

pgettext(context, string)

Пример

Давайте переведём строку 'May' в контексте месяца:

from flask import Flask from flask_babel import Babel, pgettext app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): res = pgettext('month', 'May') return res

Результат выполнения кода:

"Май"

Пример

Давайте переведём ту же строку 'May', но в контексте имени:

from flask import Flask from flask_babel import Babel, pgettext app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): res = pgettext('name', 'May') return res

Результат выполнения кода:

"Мэй"

Пример

Давайте используем pgettext внутри Jinja-шаблона через функцию, переданную в контекст:

from flask import Flask, render_template from flask_babel import Babel, pgettext app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): return render_template('index.html')
<p>{{ pgettext('month', 'May') }}</p>

Результат выполнения кода:

<p>Май</p>

Смотрите также

  • функцию gettext,
    которая выполняет обычный перевод строки
  • функцию ngettext,
    которая переводит строку с учётом числа
  • функцию npgettext,
    которая переводит строку с учётом числа и контекста
  • функцию lazy_gettext,
    которая выполняет ленивый перевод строки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить