迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Flask 调试模式

作者:迹忆客 最近更新:2023/03/27 浏览次数:

通过这个解释,我们将学习在 Flask 中使用调试模式时会得到的一些东西,以及如何使用提供调试器工具栏的扩展。


在 Flask 中启用调试模式

调试模式适用于开发环境。在开发应用程序时,你可以使用它,但如果你有应用程序的实时版本,则需要关闭调试模式。

我们创建了一个基本的 Flask 应用程序并在 run() 方法中打开了调试模式。

from flask import Flask

app = Flask(__name__)


@app.route('/', methods=['GET'])
def Basic_DEBUG():
    return 'Hi there, debug mode is on'

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

还有其他方法可以做到这一点,但现在,我们将向你展示这种调试 Flask 应用程序的简单方法。在下一节中,我们将学习另一种调试它的方法。

让我们使用这个文件启动服务器,我们可以看到我们的服务器以调试模式启动。现在,如果我们想对文件进行更改并且一旦我们保存它,调试模式将检测到更改并自动重新启动服务器。

我们不必退出并重新启动它。我们只需要刷新页面。

Flask 调试模式输出 1

让我们看看当调试处于活动状态时出现问题时会发生什么。让我们提出一个例外:

from flask import Flask

app = Flask(__name__)


@app.route('/', methods=['GET'])
def Basic_DEBUG():
    CHECK=6/0
    return 'Hi there, debug mode is on'

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

当我们保存它并刷新页面时,它会抛出一个 ZeroDivisionError,我们可以看到它失败的位置的回溯。我们可以查看失败的来源;当我们单击此处时,它会向我们显示源代码并具有交互模式。

它打开了一个小控制台,你可以在这里进行一些更改,看看为什么你不希望在生产环境中使用它,因为任何人都可以在这里运行代码。

Flask 调试模式输出 2

DebugToolbarExtension 的帮助下渲染调试器工具

我们将展示它是如何工作的,以及在我们开发 Flask 应用程序时我们会发现它在哪里有用。我们首先需要使用以下命令安装此软件包。

pip install flask-debugtoolbar

安装后,我们必须在 Flask 应用程序中进行设置;它是一个可视工具栏,可与模板一起使用。你可以使用它的唯一方法是使用 jinja 模板,这就是为什么我们将包含 render_template() 并创建一个 HTML 文件。

现在我们将处理调试工具栏扩展。要使用它,我们需要导入的第一件事是 DebugToolbarExtension;然后,我们需要设置几个配置。

我们将设置 debug 属性等于 True,我们需要在实例化工具栏之前声明它。然后我们需要的另一个配置值是 SECRET_KEY

然后我们需要实例化名为 DebugToolbarExtension() 的调试工具栏并将其传递给应用程序。

TBAR=DebugToolbarExtension(app)

一旦我们实例化调试工具栏,工具栏将自动注入到你作为响应返回的任何模板中。

from flask import Flask,render_template
from flask_debugtoolbar import DebugToolbarExtension

app = Flask(__name__)

app.debug=True
app.config['SECRET_KEY']='TEST_KEY'
TBAR=DebugToolbarExtension(app)


@app.route('/', methods=['GET'])
def DEBUG_ToolBar():
    return render_template('index.html')

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

当我们刷新页面时,工具栏出现在右侧。它向我们展示了调试时可能需要的一堆有用的东西。

首先是版本;它告诉我们我们正在使用什么版本,下一个是时间,它告诉我们生成这个页面需要多长时间。你可以自己探索所有这些变量。

Flask 调试模式输出 3

即使我们不必在控制台或浏览器的开发人员工具中查看调试器内部,我们也可以看到此功能的有用性。

模板源代码:

<html>
    <head>
        <body>
            <h1>Hi there, this is debug toolbar</h1>
        </body>
    </head>
</html>

上一篇:Flask CORS 跨域问题

下一篇:Flask 密钥

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Django 中的 Slug

发布时间:2023/05/04 浏览次数:173 分类:Python

本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。

Django ALLOWED_HOSTS 介绍

发布时间:2023/05/04 浏览次数:181 分类:Python

本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。

Django 中的 Select_related 方法

发布时间:2023/05/04 浏览次数:129 分类:Python

本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。

在 Django 中上传媒体文件

发布时间:2023/05/04 浏览次数:198 分类:Python

在本文中,我们简要介绍了媒体文件以及如何在 Django 项目中操作媒体文件。

Django 返回 JSON

发布时间:2023/05/04 浏览次数:106 分类:Python

在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。

在 Django 中创建对象

发布时间:2023/05/04 浏览次数:59 分类:Python

本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。

在 Django 中为多项选择创建字段

发布时间:2023/05/04 浏览次数:75 分类:Python

在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便