VSCode怎么调试Django后端项目_VSCodeWeb框架开发指南【实战】

陌婷小哥_3429

陌婷小哥_3429

2026-05-27

410人浏览

原创

vscode调试django失败主因是解释器、launch.json启动方式与环境变量三者未对齐;须选虚拟环境解释器、launch.json设"module":"django"及"--noreload"、硬编码"django_settings_module"、补全settings.json中managepypath和settingsmodule。

vscode怎么调试django后端项目_vscodeweb框架开发指南【实战】

VSCode 调试 Django 后端项目失败,90% 是因为解释器、launch.json 启动方式、环境变量三者没对齐——不是代码写错了,是调试器根本没进 Django 的命令生命周期。

Python 解释器必须选中虚拟环境里的 python 可执行文件

VSCode 不继承你终端里激活的环境,它只认你手动点选的那个路径。选错解释器,import django 就会报红线,ModuleNotFoundError: No module named 'django' 是最直接信号。

  • 按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入并选择 Python: Select Interpreter
  • 从列表中只选带 venv 或 env 字样的路径,例如:./venv/bin/python(Linux/macOS)或 .\venv\Scripts\python.exe(Windows)
  • 别选 /usr/bin/python3、C:\Python312\python.exe 这类系统级路径——Django 很可能不在那里
  • 选完后看窗口右下角是否显示该路径;再打开任意 .py 文件,悬停 from django.conf import settings 确认无红线

launch.json 必须用 "module": "django",不能用 "program"

用 "program": "./manage.py" 启动,VSCode 会把它当普通脚本执行,跳过 Django 命令注册逻辑。结果就是断点不命中、request.data 是 None、DRF 渲染器没加载——因为 django.setup() 根本没被调用。

Django Unfold
Django Unfold

提供使用 django-unfold (v0.56+) 构建高级 Django 管理界面的专业指导。当用户提及 django-unfold、unfold admin 等内容时使用此技能。

下载
  • 在项目根目录建 .vscode/launch.json,配置中必须含:"module": "django"
  • "args" 至少为 ["runserver", "--noreload"]:去掉 --noreload 会导致 Django fork 子进程,VSCode 只附着在主进程,断点失效
  • "env" 中硬编码 "DJANGO_SETTINGS_MODULE": "myproject.settings"(替换成你实际模块路径),不能依赖默认值
  • 加 "django": true,否则调试器不启用 Django 特有支持(如请求对象展开、模板上下文)

静态文件 404 或 DRF request.data 读不到?检查 urls.py 和 settings.py 配置时机

开发阶段静态文件返回 404,不是 STATIC_URL 写错了,而是 urls.py 没显式注册;request.data 为空,常因 DRF 的 JSONParser 没生效,或 REST_FRAMEWORK 配置读得太早。

  • 确认主 urls.py 中有这段(仅限 DEBUG=True):urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
  • 检查 settings.py 中 REST_FRAMEWORK 是否定义了 'DEFAULT_PARSER_CLASSES' 和 'DEFAULT_RENDERER_CLASSES',至少包含 'rest_framework.parsers.JSONParser'
  • 避免在模块顶层(比如 views.py 开头)就调用 os.getenv('DEBUG')——此时 Django 配置尚未加载,应改用 settings.DEBUG

settings.json 补全 managePyPath 和 settingsModule 才能启用完整 Django 支持

光有 launch.json 不够。VSCode 不自动识别 Django 项目结构,Run Server 按钮灰掉、{% url %} 点不进去、跳转不到 models.py,基本都是这里漏配。

  • 在工作区根目录的 .vscode/settings.json 中加入:"python.django.managePyPath": "./manage.py"
  • "python.django.settingsModule": "myproject.settings"(必须是 Python 模块路径,不是文件路径)
  • managePyPath 必须是相对路径;如果 manage.py 在子目录(如 src/manage.py),就得写成 "./src/manage.py"
  • 如果 settingsModule 错了,调试时 INSTALLED_APPS 为空,中间件、静态路由、认证后端全失效

最容易被忽略的是:manage.py 本身不是执行入口,真正处理请求的是 django.core.servers.basehttp 启动的线程——所以断点必须落在 views.py、serializers.py 这类业务文件里,而不是 manage.py 里。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

vscode django

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

2603

5

前端和后端的区别
前端和后端的区别

前端关注的是用户界面的设计和交互,而后端则注重数据处理和逻辑控制。想了解更多前端后端的相关内容,可以阅读本专题下面的文章。

2024.03.19

6630

13

后端的主要工作内容介绍
后端的主要工作内容介绍

后端是应用程序的服务端部分,负责核心任务,如数据库交互、业务逻辑处理和响应客户端请求。想了解更多后端的相关内容,可以阅读本专题下面的文章。

2024.03.19

6066

10

Python Web 框架 Django 深度开发
Python Web 框架 Django 深度开发

本专题系统讲解 Python Django 框架的核心功能与进阶开发技巧,包括 Django 项目结构、数据库模型与迁移、视图与模板渲染、表单与认证管理、RESTful API 开发、Django 中间件与缓存优化、部署与性能调优。通过实战案例,帮助学习者掌握 使用 Django 快速构建功能全面的 Web 应用与全栈开发能力。

2026.02.04

553

30

Python Django REST Framework接口安全与认证体系实践
Python Django REST Framework接口安全与认证体系实践

本专题围绕 Django REST Framework 展开,深入讲解 API 认证、JWT 鉴权、权限控制、接口安全防护以及防攻击策略设计。通过完整后端案例,帮助开发者构建安全可靠的 Web API 服务体系。

2026.06.29

220

15

vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1415

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2992

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

2009

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1747

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程