一个Flask程序在Spyder中可以run/debugged吗?

Can a Flask program be run/debugged in Spyder?

我正在尝试在网上找到的简单 Flask 教程。这是代码:

from flask import Flask, jsonify
from flask_cors import CORS

# configuration
DEBUG = True

# instantiate the app
app = Flask(__name__)
app.config.from_object(__name__)

# enable CORS
CORS(app)

# sanity check route
@app.route('/ping', methods=['GET'])
def ping_pong():
    return jsonify('pong!')

if __name__ == '__main__':
    app.run()

Spyder 中,如果我 运行 文件,它工作正常。但是,我希望能够像 select 那样调试和执行语句。当我 select 全部内容并执行(通过交互式控制台)时,出现以下错误。有什么办法可以做到这一点吗?

Serving Flask app "__main__" (lazy loading)
 Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
 Debug mode: on
 Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 Restarting with stat
/opt/local/anaconda3/bin/python: can't find '__main__' module in ''
An exception has occurred, use %tb to see the full traceback.

您或许可以在场景

下尝试此代码
from werkzeug.debug import DebuggedApplication

def create_app():
    # Insert whatever else you do in your Flask app factory.

    if app.debug:
        app.wsgi_app = DebuggedApplication(app.wsgi_app, evalex=True)

    return app

这将启用调试您的应用程序

有关带有示例的完整源代码,请查看下方 link

为了 运行.

使用 app.run(debug = False) 而不是 app.run()