VSCode怎么配置Django开发环境_VSCode如何搭建Python Django项目运行调试【指南】

浅晨吖_1425

浅晨吖_1425

2026-03-21

256人浏览

原创

vscode调试django需正确配置python解释器、launch.json环境变量及静态文件路由。须选虚拟环境路径,设置django_settings_module,启用subprocess,且urls.py中添加static()路由。

vscode怎么配置django开发环境_vscode如何搭建python django项目运行调试【指南】

装对 Python 解释器,不是选“Python 3.x”就完事

VSCode 启动 Django 项目失败,八成卡在解释器没认对。它不看你系统里装了几个 Python,只认你当前工作区指定的那个 python 可执行文件路径。

实操建议:

  • 打开项目根目录后,按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 Python: Select Interpreter,从列表里选带 venv 或 env 字样的路径,比如 ./venv/bin/python(macOS/Linux)或 .\venv\Scripts\python.exe(Windows)
  • 别选系统级的 /usr/bin/python3 或 C:\Python39\python.exe——Django 和依赖包很可能不在那里
  • 确认选中后,看 VSCode 窗口右下角是否显示对应环境路径;再打开一个 .py 文件,看左下角有没有正确识别出 django 模块(悬停 from django.conf import settings 应无红线)

settings.py 里 DEBUG=True 不等于能直接 runserver

Django 调试失败常被误认为是代码问题,其实是 VSCode 没把命令行参数和环境变量传进去。比如 runserver 需要 DJANGO_SETTINGS_MODULE,而 VSCode 默认不自动设这个。

实操建议:

  • 在项目根目录建 .vscode/launch.json,用 Python: Django 模板生成基础配置,然后确保 "env" 字段包含:"DJANGO_SETTINGS_MODULE": "myproject.settings"(替换成你实际的 settings 模块路径)
  • "args" 别空着,至少加 ["runserver", "8000"],避免它默认监听 127.0.0.1:8000 却被防火墙或端口占用挡掉
  • 如果用了自定义 manage.py 路径(比如放在子目录),得改 "module" 为 "django.core.management" 并在 "args" 里显式写上 ["--pythonpath", "./src", "runserver"]

静态文件 404?不是 Django 配错了,是 VSCode 没开 Live Server 或没配好 URL

运行 runserver 后访问 /static/css/app.css 返回 404,很多人去翻 STATIC_URL 和 STATICFILES_DIRS,其实问题在开发阶段根本没启用静态文件服务——Django 默认只在 DEBUG=True 且请求路径匹配 static/ 时才由开发服务器代管,但前提是 urls.py 里有 staticfiles_urlpatterns() 注册。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载

实操建议:

  • 检查主 urls.py 是否有这段(仅开发用):
    from django.contrib import admin<br>from django.urls import path, include<br>from django.conf import settings<br>from django.conf.urls.static import static<br><br>urlpatterns = [<br>    path('admin/', admin.site.urls),<br>    # ... 其他路由<br>] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
  • 确保 settings.py 中 STATIC_URL = '/static/',且 STATICFILES_DIRS 指向你放 CSS/JS 的真实目录(如 [BASE_DIR / 'static'])
  • 别指望 VSCode 自己启动额外的静态服务——它只是调用 python manage.py runserver,一切行为由 Django 内置服务器控制

断点进不去 views.py?检查是不是在 manage.py 里启的调试,而不是 runserver 子进程

VSCode 默认调试 manage.py,但 runserver 实际会 fork 出新进程处理 HTTP 请求,原调试器无法跟进。结果就是你在 views.py 打的断点永远不触发。

实操建议:

  • 必须在 launch.json 中启用 "subProcess": true,否则调试器只挂住主进程,收不到子进程信号
  • 确认 "module" 是 "django.core.management",而不是直接指向 manage.py——后者容易绕过 Django 的调试钩子
  • 如果仍不生效,临时在 view 函数开头加一句 import pdb; pdb.set_trace(),看终端是否暂停:能停说明环境通,只是 VSCode 断点没连上子进程

Django 在 VSCode 里的调试链很脆,subProcess、DJANGO_SETTINGS_MODULE、虚拟环境路径这三处只要错一个,表现出来的症状可能完全一样:服务起来但断点无效、静态资源 404、甚至 ImportError: No module named 'django'。动手前先用终端手动跑一遍 python manage.py runserver,确认基础流程走通,再让 VSCode 接管。

Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!

相关文章

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

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

下载

相关标签:

vscode

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

相关专题

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

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

2026.02.04

533

30

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

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

2026.06.29

220

15

json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

2095

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

3142

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

1056

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3579

7

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

2023.06.20

4216

8

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.28

1315

5

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.03

1698

5

热门下载

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

精品课程

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