【问题标题】:flask.cli.NoAppException: Application crashingflask.cli.NoAppException:应用程序崩溃
【发布时间】:2017-02-01 12:07:35
【问题描述】:

当我尝试访问我的 Flask 应用程序时它崩溃了。

这与thisthis 的错误类似。不过,我的设置似乎是正确的。

flask.cli.NoAppException:提供的文件/路径(服务器)似乎不存在。请验证路径是否正确。如果应用不在 PYTHONPATH 上,请确保扩展名为 .py

我的环境变量设置正确。

export FLASK_APP=server.py
export FLASK_DEBUG=1

我的服务器文件是server.py,我的目录中没有__init__.py

我不记得在代码中更改了任何特殊内容。错误可能来自哪里?

【问题讨论】:

  • 你的server.py在同一个目录吗?
  • 是的。只有一个目录。
  • 对于任何有同样问题的人:如果你使用 virtualenv,请检查你是否激活它:)

标签: python flask


【解决方案1】:

问题是某些包丢失或损坏。

我用pip3 install -r requirements.txt --ignore-installed 重新安装了所有东西,现在一切正常。

【讨论】:

    【解决方案2】:

    此错误可能表示未找到导入。 要查看缺少哪个导入,请尝试使用 python 解释器运行 server.py 文件:

        python yourapp.py
    

    输出示例:

        Traceback (most recent call last):
            File "yourapp.py", line 4, in <module>
             from flask_httpauth import HTTPBasicAuth
        ImportError: No module named flask_httpauth
    

    Source (and other leads)

    【讨论】:

    • ... 或者,如果您有一个模块,(使用 __init__.py 等)然后执行:python -m yourapp
    【解决方案3】:

    对我来说,解决方案是在我的 _ init _.py

    中修复拼写错误的函数名称“create_app”
    from flask import Flask
    
    def create_app(test_config=None):
        app = Flask(__name__)
        return app
    

    【讨论】:

      【解决方案4】:

      超级迟到的答案,但我刚刚遇到这个问题,解决方案是在 VS Code 中使用远程 WSL 连接。我以为我在正确的文件夹中,但 VS Code 在 Windows 中查看了一个非常相似的文件夹。您可以通过在项目文件夹中的 linux 终端中运行“touch somefile.abc”来判断您在错误的文件夹中,但该文件不会自动出现在 VS Code 的文件夹结构中。

      https://code.visualstudio.com/docs/setup/linux https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-31
        • 1970-01-01
        • 1970-01-01
        • 2013-02-03
        • 2011-01-01
        • 2012-03-30
        • 2011-06-20
        • 2013-08-18
        相关资源
        最近更新 更多