目录结构:
初学python/flask,正练习入门小项目,按教程成功运行的程序,可对几个文件相互import给绕晕了,请各位能帮忙理一理思路,感激不尽!
1、manage.py 中的 from app import app,这是导入了app/__init__.py中的app=Flask(__name__)这一行吗?
2、__init__.py 中的from app import viers,models是在什么时候执行的?
3、views.py中,怎么还有from app import app,不算重复吗?
先就提以上几个问题,谢谢各位!
不是導入那一行,只是導入你實例化的app物件
首先要說明,flask專案中不可能總是只有一個應用,你這裡只有一個
app
应用。在__init__.py
中导入views
,models
等模块是为了方便同级文件或其他文件导入它们。例如你可能需要在views.py
中导入models
, 你只需要from app.models import ...
,如果你在这个flask项目中需要一个RESTful
服务,它和app
在同级,它需要app
中的一些模块的话,导入的时候只需要from app.models import ...
。实际上,即使不在
__init__.py
中導入,你在其他模組中呼叫時也是可以的。不算重複,因為
views.py
中要使用到app
这个实例对象。比如@app.route()
。