Как изменить имя файла точки входа в Flask?

Я относительно неопытный пользователь Python и совершенно новичок в Flask, поэтому я уверен, что это глупо, но...

У меня был файл, служивший точкой входа для Flask, с именем some_silly_name.py, который содержит строку app = Flask(__name__). Сервер работал нормально, пока я не решил, что это имя глупое, поэтому я переименовал файл в a_much_better_name.py. Теперь на flask run я получаю сообщение об ошибке Error: Could not import "some_silly_name".

Что мне нужно сделать, чтобы изменить имя этого файла и при этом запустить Flask?

Вы определяете переменную среды в .flaskenv? Ты изменил это на a_much_better_name.py?

badri 10.04.2019 19:09

@badri Я не использую файл .flaskenv, нет.

Lasf 10.04.2019 19:12

Что такое полная трассировка?

roganjosh 10.04.2019 19:12

@Lasf, можете ли вы опубликовать свою древовидную структуру проекта?

badri 10.04.2019 19:13

@roganjosh нет трассировки, это буквально просто говорит Error: Could not import "some_silly_name"

Lasf 10.04.2019 19:13

@badri это всего лишь один файл в корне проекта! Кроме venv вот и все.

Lasf 10.04.2019 19:17

Вы на Windows или Linux? Сделайте set FLASK_APP=a_much_better_name.py (или export вместо set для Linux). Я подозреваю, что вы забыли изменить эту переменную среды

roganjosh 10.04.2019 19:17

@roganjosh сделал это. Спасибо друг.

Lasf 10.04.2019 19:18

Попробуйте экспортировать FLASK_APP=a_much_better_name.py

badri 10.04.2019 19:18

Похоже, ты понял @Lasf

badri 10.04.2019 19:18

@badri Привет, спасибо

Lasf 10.04.2019 19:18
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
11
1 357
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Проверьте свой оператор импорта... чтобы убедиться, что вы также изменили имя файла с sily_name на better_name.

Ваш код поможет легко указать вам правильное направление.

Ответ принят как подходящий

Вы действительно установили переменную среды с помощью:

export FLASK_APP=some_silly_name.py

(Или с set вместо export в Windows). Даже если вы измените имя файла точки входа и исправите все ссылки на исходный файл в приложении, вам нужно будет повторно установить эту переменную, чтобы она указывала на новую точку входа.

Другие вопросы по теме