当前位置: 首页 > 知识库问答 >
问题:

烧瓶配置文件-'DEBUG=True'什么都不做

艾焕
2023-03-14

我在一个名为“MyApp”的包中构建了一个大烧瓶应用程序(如下图所示):http://flask.pocoo.org/docs/0.12/patterns/packages/)

根据Flask文档,调试模式应启用以下功能:

  1. 它激活调试器

一开始,我使用以下命令运行我的烧瓶应用程序,一切都很好:

export FLASK_APP=MyApp
export FLASK_DEBUG=1 
flask run

然后我阅读了关于设置配置系统的正确方法(包括调试模式)。因此,我创建了以下配置。py文件:

class Config(object):
    DEBUG = False
    ...

class ProductionConfig(Config):
    ...

class DevelopmentConfig(Config):
    DEVELOPMENT = True
    DEBUG = True
    ...

CONFIGS = {
    "development": DevelopmentConfig,
    "production": ProductionConfig,
    "default": DevelopmentConfig
}

在我的应用程序中。py文件,我写道:

app = Flask(__name__)
config_name = os.getenv('FLASK_CONFIGURATION', 'default')
app.config.from_object(CONFIGS[config_name])

现在,要运行应用程序,我输入一个新命令:

export FLASK_APP=MyApp
export FLASK_CONFIGURATION=development 
flask run

不幸的是,这次调试模式根本没有激活。。

没有激活调试器或自动重新加载程序。唯一改变的是app.debug现在等于True

我不明白。。看起来调试=TRUE工作不正常。

你知道为什么会这样吗?

共有1个答案

史骏祥
2023-03-14

使用调试器运行与设置DEBUG配置不同。您必须两者兼而有之。在开发模式下运行服务器会自动设置配置。通常,您应该依赖它而不是直接设置配置。

您读到的“正确配置方式”是a)只是另一种方式,而不是“正确”方式,b)只设置配置,而不是FLASK_ENVFLASK_DEBUG环境变量,这是控制服务器调试模式的东西。

设置环境变量FLASK\u ENV=development告诉FLASK run使用调试器和重新加载程序包装应用程序。(app.run(debug=True)执行相同的操作,但无法设置FLASK\u ENV,它只有一个ENV变量。现在首选使用FLASK run命令)<代码>应用程序。调试切换Flask应用程序中的一些内部行为,例如将错误传递给启用了开发模式的交互式调试器。

 类似资料:
  • 问题内容: 我正在尝试使用Flask创建一个Web应用程序,该应用程序允许用户上传文件并将其提供给其他用户。现在,我可以将文件正确 地上 传到 upload_folder了 。但是我似乎找不到找到让用户下载回来的方法。 我将文件名的名称存储到数据库中。 我有一个为数据库对象服务的视图。我也可以删除它们。 在我的HTML中,我有: 和下载视图: 但它正在返回: 未找到 在服务器上找不到请求的URL。

  • 我正在使用flask应用程序工厂模式,比如,并运行这个。py文件: 然后我像这样运行应用程序: 但是当我去http://localhost:5000它不起作用。它说: 未找到 在服务器上找不到请求的URL。如果您手动输入URL,请检查拼写并重试。 可能有什么问题?当我有127.0.0.1地址时,它运行良好。。。 我需要在“localhost”上运行,因为我正在集成方形支付,他们的沙盒设置需要我从“

  • 我正在使用flask-RESTful开发API,并且对Flask的jsonify函数有问题。我正在使用flask-marshmlet进行JSON序列化。下面是一个非常简化的代码片段: 在本地,endpoint将返回具有键“data”和“error”的json;但是,当在Linux服务器上运行时,它会返回一个包含列表和在没有“data”和“error”键的情况下返回的结果。 我已经确定这种不一致是由

  • 我已将芹菜配置为在dev box上为Flask应用程序运行异步作业,如下所示: 配置。py: 管理py: 在启动应用程序之前,我先启动redis: 然后,当我运行应用程序(run_芹菜)时,会显示以下芹菜配置: <>** ---------- . 以及以下重复出现的错误: 错误/主进程消费者:无法连接到amqp://guest:**@127.0.0.1:5672//:[Errno 111]连接拒绝

  • 我发现很难找到有关这方面的资料。会是什么?我如何解决这个问题?有哪些可能的修复方法? UWSGI日志文件 时钟来源:unix检测到CPU核数:4当前工作目录:/home/pi检测到二进制路径:/usr/local/bin/uwsgi!!!没有内部路由支持,重建与pcre支持!!!*警告:您在没有主进程管理器的情况下运行uWSGI进程数限制为7336内存页大小为4096字节检测到最大文件描述符号:6

  • 我目前正在创建一个涉及flask和webpack的项目。目前flask服务器能够找到相关模板,但无法找到相关JavaScript。 我有一个webpack配置用于创建超文本标记语言文件使用webpack html插件这样: 在src目录中使用名为index.html的模板,其中包含以下内容: webpack应将其与以下javascript index.js捆绑在一起: 和print.js: app