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

Переменная g

Переменная g применяется внутри контекста приложения Flask и служит для хранения данных, живущих ровно один запрос. Объект g доступен из модуля flask и работает как обычное пространство имён: ему можно присваивать любые атрибуты, а затем читать их в других функциях, вызванных в рамках того же запроса. После завершения запроса все данные из g очищаются, поэтому переменная удобна для передачи результатов между обработчиками, декораторами и функциями шаблонов.

Синтаксис

from flask import g g.attr = value

Пример

Давайте сохраним в g значение и прочитаем его внутри того же запроса:

from flask import Flask, g app = Flask(__name__) @app.before_request def set_data(): g.text = 'abcde' @app.route('/') def index(): return g.text

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

abcde

Пример

Давайте запишем в g список и выведем его через шаблон Jinja:

from flask import Flask, g, render_template app = Flask(__name__) @app.before_request def set_data(): g.res = ['a', 'b', 'c', 'd', 'e'] @app.route('/') def index(): return render_template('index.html')

Содержимое шаблона:

<+jinja+> {% for elem in g.res %}

{{ elem }}

{% endfor %} <-jinja+>

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

<p>a</p> <p>b</p> <p>c</p> <p>d</p> <p>e</p>

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

  • метод get,
    который читает значение атрибута из g
  • метод pop,
    который удаляет атрибут из g и возвращает его
  • метод setdefault,
    который задаёт значение атрибута, если его нет
  • переменную g,
    которая хранит глобальные данные запроса
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить