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