Flask找不到我的模板目录。我在C:\ old \ path \ HerokuApp上有一个工作程序,所有程序都已设置并且可以正常工作。
然后,我删除了C:\ old \ path \ HerokuApp中的所有内容,因此现在为空,然后将所有文件放入C:\ new \ path \ HerokuApp中(从技术上讲,我是从github克隆到新路径中的)。
现在,当我转到http://localhost:5000时,我得到一个Jinja stacktrace错误,其中包含以下行:
File "C:/old/path/HerokuApp/launcher.py", line 14, in home
但是正如我所说,该文件已不存在!
我的问题:如何让Flask刷新其工作目录?
我尝试以三种不同的方式启动该应用程序,我认为所有这些方法都可以从项目的根目录中运行它:
(1)使用python:
C:\new\path\HerokuApp>"C:\path\to\python.exe" launcher.py
(2)使用烧瓶:
set FLASK_APP=launcher.py
C:\new\path\HerokuApp>"C:\path\to\flask.exe" run
(3)使用spyder:
runfile('C:/new/path/HerokuApp/launcher.py', wdir='C:/new/path/HerokuApp')
答案 0 :(得分:0)
好的,所以我知道了。以前,我一直在使用Spyder运行该应用程序,但是重新启动内核或关闭Spyder并不能完全杀死它……Windows任务管理器显示仍将运行python进程。杀死那个最终停止了localhost:5000端口的服务。完成此操作后,我便可以从新路径启动我的应用了。
对我来说,主要的好处是不要使用Spyder来启动Flask应用程序:它无法停止服务器(从3.1.4版开始)。相比之下,使用python或flask启动应用程序-我的问题中的(1)和(2)-明确地为您提供了一个选择,方法是按ctrl-C。