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

Функция _

Функция _ применяется для перевода текстовых строк на текущий язык приложения. Она является обёрткой над функцией gettext и принимает первым параметром строку для перевода. Дополнительные параметры передаются для подстановки значений в строку формата.

Функция доступна в шаблонах Jinja2 автоматически, а в Python-коде её нужно импортировать из модуля flask_babel или получить из объекта приложения.

Синтаксис

_(string, **variables)

Пример

Давайте переведём простую строку в Python-коде:

data-pPathX="app.py" from flask import Flask from flask_babel import Babel, _ app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): return _('hello')

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

"привет"

Пример

Давайте подставим значение в строку перевода с помощью именованной переменной:

data-pPathX="app.py" from flask import Flask from flask_babel import Babel, _ app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): return _('hello, %(name)s', name='user')

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

"привет, user"

Пример

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

data-pPathX="app.py" from flask import Flask, render_template from flask_babel import Babel app = Flask(__name__) app.config['BABEL_DEFAULT_LOCALE'] = 'ru' babel = Babel(app) @app.route('/') def index(): return render_template('index.html')
data-pPathX="templates/index.html" <p>{{ _('hello') }}</p>

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

<p>привет</p>

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

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