调试 Django 模板
最后修改时间:2023 年 6 月 26 日警告
此功能仅在专业版中支持。该版本是商业版本,它提供了一组出色的功能:有关更多详细信息,请参阅比较矩阵。
在开始之前,请确保将 Django 指定为项目模板语言。
准备一个例子
demoDjangoProject
使用应用程序创建一个 Django 项目poll
。PyCharm 创建项目结构并使用必要的文件填充它。
打开文件poll/views.py。它已经有为
import
您的应用程序创建视图的声明和邀请:from django.shortcuts import render # Create your views here.
让我们为应用程序的主页定义一个视图:
from django.shortcuts import render def index(request): return render(request, 'poll/index.html', context={'hello': 'world'})
index.html被标记为未解析的引用:
按或单击并选择创建缺少的模板:AltEnter
将出现“创建模板”对话框,其中显示只读模板名称(“模板路径”字段)以及可能的模板位置列表(“模板根”字段):
选择将在其中创建新模板的模板目录。
模板根字段提供新模板的可能位置列表。此列表包括IDE 设置的“项目结构”页面中 指定的模板目录以及位于应用程序目录内的所有模板文件夹(如果有)。CtrlAlt0S
单击“确定”。
在指定位置创建一个空的.html文件
在模板
/poll /index.html hello
中,键入以下代码以逐个字符打印出变量的值:{% for char in hello %} {{ char }} {% endfor %}
根据poll/views.py
hello
中提供的上下文,的值为world
。因此,我们期望呈现的页面包含w o r l d
.打开demoDjangoProject/urls.py文件。
在此文件中找到
urlpatterns
并添加以下代码来定义应使用哪个视图来呈现索引页:path('index/', index),
不要忘记导入声明!
from poll.views import index
您最终应该得到以下结果:
这样,示例代码就准备好了。
设置断点
在模板文件中添加断点。为此,请打开文件模板
/poll 并单击装订线:/index.html
Django服务器运行/调试配置是自动创建的。如果需要,您可以通过选择主工具栏上的运行/调试配置列表中的编辑配置命令来编辑它:
例如,您可以选择在启动配置时自动打开浏览器窗口:
启动运行/调试配置
单击 ,在调试模式下启动选定的运行/调试配置。
单击“调试”工具窗口中的链接。将打开一个浏览器窗口,并显示“未找到页面”消息:
'/'
发生这种情况是因为我们没有在文件urls.py中指定路径让我们
/index
在浏览器地址栏中添加并按Enter。
将出现 PyCharm 窗口。您可以看到已命中断点,并且“调试”工具窗口的“线程和变量”选项卡中包含变量的当前值:
Django 应用程序的调试工具窗口具有所有功能,类似于纯 Python 脚本:
单步执行程序
步进工具栏处于活动状态,并且步进按钮可用。例如,您可以单击并看到
char
变量的值更改为单词 的下一个字母world
。有关详细信息,请参阅逐步执行程序。
评估表达式
按或单击步进工具栏上的,然后选择计算表达式。在打开的对话框中,输入要计算的表达式,然后单击“计算”:AltF8
有关详细信息,请参阅计算表达式。
观察变量
假设您希望始终关注模板的某个变量,例如
char
. 怎么做?在“调试”工具窗口的“调试器”选项卡顶部,键入感兴趣的变量的名称,然后按:
在其余的调试过程中,变量的值将显示在变量列表的顶部。有关更多信息,请参阅手表。
就是这样……这里做了什么?让我们重复一遍:
您已经创建了一个 Django 项目,其中包含一个模板。
您已为此模板添加了一个断点。
您已在调试模式下启动了 Django 服务器运行/调试配置。
到达断点后,您已经了解了如何单步执行模板、计算表达式以及添加监视。
感谢您的反馈意见!