首先让我说说我对Python作为数据工具很熟悉,但这是我第一次使用Python / Flask。...我正在研究Flask Mega教程,并决定尝试为公司销售团队制作仪表板。我才刚开始,我不知道自己做错了什么。
Here是我在Github上的项目的链接,我认为是因为导入是循环的?但是我不确定如何解决它。我的app.py文件创建了应用程序,然后将其导入到route.py和models.py中。 route.py依赖于我的User类的models.py。我可以在本地运行它,它说Flask应用程序正在运行,但是浏览器出现404错误。
答案 0 :(得分:2)
if __name__ == "__main__":
app.run(debug=True)
应放置在routes.py
的末尾,而不是app.py
内。
对此answer进行阅读:
Python解释器读取源文件时,将执行其中找到的所有代码。
在执行代码之前,它将定义一些特殊变量。例如,如果Python解释器正在将该模块(源文件)作为主程序运行,则它将特殊的
__name__
变量设置为值__main__
。如果此文件是从另一个模块导入的,则__name__
将设置为模块的名称。
因此,仅当您运行app.py
时才会执行上述代码。如果运行routes.py
,除非它放在routes.py
模块内,否则它将变得毫无意义。
我对其进行了测试,并且可以正常工作: