Как заставить reloadium автоматически перезагружать один файл веб-маршрута в Flask Python без перезапуска app.py?Python

Программы на Python
Ответить
Anonymous
 Как заставить reloadium автоматически перезагружать один файл веб-маршрута в Flask Python без перезапуска app.py?

Сообщение Anonymous »

Кто-нибудь знает о технологии горячей перезагрузки, такой как reloadium для разработки Python?
У меня есть простой демонстрационный проект Python Flask, содержащий 2 файла Python:
app.py

Код: Выделить всё

from flask import Flask
from web_route import register_main_route

def create_app():

app = Flask(__name__)
register_main_routes(app)

print('----------(re)starting create_app()...')
return app

app = create_app()

if __name__ == '__main__':
print('-----------(re)starting __main__()')
app.run(debug=False,port=5007)
web_route.py

Код: Выделить всё

def register_main_route(app):

@app.route('/')
def home():
return "Hello Flask web !"
И теперь я запускаю свой app.py с помощью reloadium, платформы горячей перезагрузки для Python.

Код: Выделить всё

pip install reloadium
reloadium run app.py
Проект запускается нормально, веб-маршрут '/' работает хорошо.

Код: Выделить всё

$ reloadium run app.py
■■■■■■■■■■■■■■■
Reloadium 1.5.1
■■■■■■■■■■■■■■■
If you like this project consider giving a star at https://github.com/reloadware/reloadium
----------(re)starting create_app()...
-----------(re)starting __main__()
* Serving Flask app 'app'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:5007
Press CTRL+C to quit
Loaded 2 watched modules so far from paths:
- C:\idp\code\e\**\*.html
- C:\idp\code\e\**\*.py
127.0.0.1 - - [13/Oct/2025 10:01:49] "GET / HTTP/1.1" 200 -
Изображение

Теперь я изменил содержимое файла «web_route.py», добавив строку «123» после символов «...Hello Flask web...» в функции «home()», я хочу, чтобы http://127.0.0.1:5007/ отображал содержимое: «Hello Flask web 123!».
Я ожидаю, что reloadium автоматически перезагрузит функцию «home()», но это не работает. На консоли отображались некоторые ошибки.

Код: Выделить всё

Update Module: web_route
Update Function: register_main_route(1-5)
Reloadium experienced an error.
Please submit a github issue to let us know at https://github.com/reloadware/reloadium
Last changes could not be hot reloaded.
Please undo to continue
Кто-нибудь знает об этой проблеме и перезагрузке (https://github.com/reloadware/reloadium/)?
Наконец, я должен сказать: Я НЕ МОГУ установить 'debug=True' в app.run(), потому что если бы я это сделал, файл записи Flask 'app.py' автоматически перезапустится, когда я изменю любой другой Python файл (не «web_route.py», а другие), но перезапуск занимает у меня гораздо больше времени, я этого не хочу, потому что фактическое содержимое файла «app.py» (в моем реальном проекте) намного больше и сложнее, чем то, что я разместил здесь, и в моем реальном проекте есть много других файлов Python.

Подробнее здесь: https://stackoverflow.com/questions/797 ... k-python-w
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»