Атрибут import_name
Атрибут import_name хранит строку с именем модуля,
которое было передано первым аргументом в конструктор
класса Flask. Обычно сюда передают специальную
переменную __name__, и Flask использует это значение
для поиска корневого пути приложения, шаблонов
и статических файлов.
Атрибут доступен только для чтения и не принимает
параметров. Его значение помогает Flask понять,
откуда было запущено приложение, чтобы корректно
расположить папки templates и static.
Синтаксис
app.import_name
Пример
Давайте создадим приложение и выведем значение
атрибута import_name:
from flask import Flask
app = Flask(__name__)
print(app.import_name)
Результат выполнения кода:
"__main__"
Если запустить этот файл напрямую, переменная
__name__ равна '__main__', поэтому
и атрибут хранит эту строку.
Пример
Давайте передадим в конструктор произвольную строку
вместо __name__ и посмотрим, как изменится
значение атрибута:
from flask import Flask
app = Flask('my_app')
print(app.import_name)
Результат выполнения кода:
"my_app"
Как видно, атрибут просто хранит то значение, которое было передано при создании приложения.
Пример
Давайте используем атрибут import_name внутри
обработчика маршрута и вернём его значение
в ответе:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return app.import_name
Результат выполнения кода для адреса /:
__main__
Смотрите также
-
класс
Flask,
которому принадлежит данный атрибут -
атрибут
name,
который хранит имя приложения -
атрибут
root_path,
который хранит корневой путь приложения -
атрибут
template_folder,
который задаёт папку с шаблонами