烧瓶运行与python

时间:2018-03-12 15:13:20

标签: python flask

我很难通过使用" 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"来调用应用程序。方法。任何帮助表示赞赏。

2 个答案:

答案 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/是一个可导入的模块。

See this article.

相关问题