You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS调试Django项目时调试器无本地变量显示问题咨询

Visual Studio调试最新版Django时本地变量不显示修复方案

问题复现代码

from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.

def calculate():
    x = 1
    y = 2
    return x

def say_hello(request):
    x = calculate()
    return render(request, 'hello.html', {'name': 'Sir Pickles'})

排查修复步骤

  • 关闭调试器「仅我的代码」功能
    最新版Visual Studio Python调试模块存在栈帧识别问题,开启仅我的代码时会误将用户编写的Django视图、工具函数判定为框架代码,直接屏蔽局部变量读取。操作路径:顶部菜单选择「调试」→「选项」,展开「Python」分类下的「调试」设置页,取消勾选启用仅我的代码,保存后重启调试即可。
  • 移除Python优化启动参数
    若调试启动配置中添加了-O、-OO优化参数,或是系统环境变量设置了PYTHONOPTIMIZE=1/2,Python解释器会丢弃局部变量调试符号,导致调试器无法读取变量值。排查时直接打开项目调试属性页,清空解释器参数栏的优化参数,同时删除对应环境变量配置即可。
  • 关闭Django开发服务器热重载
    Django默认启动的开发服务器带热重载功能时,会生成子进程处理实际请求,Visual Studio调试器默认附加到父进程,无法读取子进程内的变量信息。在调试启动的命令参数中添加--noreload关闭热重载,即可让调试器正确挂载到运行代码的进程上。
  • 重装Python调试组件
    部分版本Visual Studio自带的debugpy调试组件存在Django上下文枚举bug,会导致请求栈帧的变量读取失败。打开Visual Studio Installer,找到已安装的Python开发工作负载,取消勾选「Python调试器」组件完成卸载后,重新勾选安装,重启VS即可恢复正常。

以上步骤验证后,在calculate函数return x行、say_hello函数x = calculate()行打断点调试,本地变量面板可正常展示当前作用域下的x、y、request等变量值。

内容的提问来源于stack exchange,提问作者user4963654

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 16:09:20