我很难通过使用" python"来运行我的烧瓶应用程序。方法。我没有问题
export FLASK_APP=microblog.py
flask run
但尝试使用
python microblog.py
将导致以下错误
ImportError: No module named 'app'
我的微博.py文件如下所示:
from app import app, db
from app.models import User
@app.shell_context_processor
def make_shell_context():
return {'db': db, 'User': User}
我的__init__.py
文件如下所示:
from flask import Flask
from config import Config
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
from flask_login import LoginManager
app = Flask(__name__)
app.config.from_object(Config)
db = SQLAlchemy(app)
migrate = Migrate(app, db)
login = LoginManager(app)
login.login_view = 'login'
from app import routes
if __name__ == '__main__':
app.run()
这些文件所在的文件夹名为' app'。我试过把
if __name__ == '__main__':
app.run()
在微博.py文件中也是不成功的。
我还有模板/静态/等文件夹。和一个路径文件,我运行所有@app.route()
命令
同样,当我跑步时,一切正常。"烧瓶运行"在终端中,当我尝试使用" python microblog.py"时,它就会崩溃。我试图在AWS上启动应用程序,几乎每个教程都需要使用" python"来调用应用程序。方法。任何帮助表示赞赏。
答案 0 :(得分:1)
<强> [解决] 强>
我的目录混乱了。我将microblog.py
移回app
文件夹之外,并且能够毫无问题地运行python microblog.py
而无需编辑任何内容。
事后看来,我可能应该在开始时发布所有内容的文件结构。
答案 1 :(得分:0)
在此行from app import app, db
中,您尝试导入名为app.app
的模块,但显然项目源中不存在。
尝试在app.py
路径中创建名为app/
的文件,复制并粘贴其中__init__.py
个文件的所有内容。
您的__init__.py
必须为空。它只是表明您的路径app/
是一个可导入的模块。