Атрибут extensions
Атрибут extensions применяется к приложению
Flask и представляет собой словарь, в котором
хранятся объекты расширений. Ключом служит имя
расширения, а значением - объект, который это
расширение зарегистрировало в приложении.
Расширения попадают в словарь автоматически
при вызове своих методов инициализации,
например init_app.
Данный атрибут удобно использовать для доступа к уже подключённым расширениям из любого места приложения, не импортируя их повторно.
Синтаксис
app.extensions['name']
Пример
Давайте посмотрим, как выглядит словарь
extensions у только что созданного
приложения:
from flask import Flask
app = Flask(__name__)
res = app.extensions
print(res)
Результат выполнения кода:
{}
Пример
Давайте зарегистрируем собственное расширение
вручную и получим его через атрибут
extensions:
from flask import Flask
app = Flask(__name__)
app.extensions['myext'] = {'version': '1.0'}
res = app.extensions['myext']
print(res)
Результат выполнения кода:
{'version': '1.0'}
Пример
Давайте проверим наличие расширения в словаре перед обращением к нему:
from flask import Flask
app = Flask(__name__)
app.extensions['myext'] = {'version': '1.0'}
if 'myext' in app.extensions:
res = app.extensions['myext']['version']
else:
res = 'not installed'
print(res)
Результат выполнения кода:
"1.0"
Смотрите также
-
класс
Flask,
которому принадлежит данный атрибут -
атрибут
config,
который хранит настройки приложения -
атрибут
jinja_env,
который хранит окружение шаблонизатора -
метод
register_blueprint,
который регистрирует чертёж в приложении