如何在 VSCode 中配置并运行 Django 后端项目

云静酱_4498

云静酱_4498

2026-06-28

565人浏览

原创

必须选项目虚拟环境里的python解释器,否则django无法启动;需通过python: select interpreter选择venv路径,配置launch.json的"module": "django"和settings.json的python.django.managepypath与settingsmodule。

如何在 vscode 中配置并运行 django 后端项目

VSCode 选错 Python 解释器,Django 根本不会启动

90% 的 ModuleNotFoundError: No module named 'django' 都是因为 VSCode 没用你装了 Django 的那个 Python。它不继承终端激活的虚拟环境,只认你手动选中的解释器路径。

按 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
  • 打开任意 .py 文件,悬停 from django.conf import settings,确认无红线
  • 仍报错?尝试在终端激活虚拟环境后启动 VSCode:source venv/bin/activate && code .(macOS/Linux)或 venv\Scripts\activate.bat && code .(Windows)

launch.json 必须用 module 启动,不能用 program 指向 manage.py

用 "program": "manage.py" 是最常见误区:VSCode 把它当普通脚本执行,跳过 Django 命令解析逻辑,runserver 参数不生效,断点进不去视图函数,环境变量也传不进去。

在项目根目录建 .vscode/launch.json,关键配置如下:

Django Unfold
Django Unfold

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

下载
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Django",
      "type": "python",
      "request": "launch",
      "module": "django",
      "args": ["runserver", "--noreload", "8000"],
      "django": true,
      "env": {
        "DJANGO_SETTINGS_MODULE": "myproject.settings"
      }
    }
  ]
}
  • "module": "django" 强制走 python -m django 启动,避免子进程 fork 导致断点丢失
  • --noreload 是必须项,否则调试器只附着在父进程,请求处理线程里断点无效
  • "django": true 启用模板上下文、URL 路由跳转等 Django 特有支持
  • DJANGO_SETTINGS_MODULE 必须显式写全模块路径,不能依赖默认值

settings.json 里漏配 managePyPath 和 settingsModule,功能就残缺

没有这两项,VSCode 不识别 Django 项目结构:Run Server 按钮灰掉、models.py 点不进去、模板语法无提示、{% url %} 无法跳转——不是插件没装好,是根本没告诉 VSCode “这是个 Django 项目”。

在工作区根目录的 .vscode/settings.json 中加入:

{
  "python.django.managePyPath": "./manage.py",
  "python.django.settingsModule": "myproject.settings"
}
  • managePyPath 必须是相对路径,不能写成 /full/path/to/manage.py
  • settingsModule 是 Python 模块路径(如 myproject.settings.dev),不是文件路径
  • 如果 settingsModule 错了,调试时 INSTALLED_APPS 为空,中间件、静态路由全失效

静态文件 404、环境变量读不到,问题不在代码而在加载时机

访问 /static/css/app.css 返回 404,不是 STATIC_URL 配错了,而是开发服务器根本没注册静态路由;os.getenv('DEBUG') 返回 None,不是没设环境变量,而是读得太早——Django 配置还没加载,或者 launch.json 的 env 没注入到子进程。

  • 确保 DEBUG = True,并在主 urls.py 末尾加:from django.conf import settings; from django.conf.urls.static import static; urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
  • 环境变量优先在 launch.json 的 env 字段硬编码,比如 "DEBUG": "1"、"DATABASE_URL": "sqlite:///db.sqlite3"
  • 避免在模块顶层(如 __init__.py 或 settings.py 开头)直接调用 os.getenv();改用 settings.DEBUG 这类延迟求值方式

真正卡住人的,往往不是哪行代码写错了,而是解释器、launch.json、settings.json 三者之间没对齐——少一个,调试就断链。

相关文章

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

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

下载

相关标签:

vscode django

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

相关专题

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

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

2023.08.11

2563

5

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

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

2024.03.19

6570

13

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

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

2024.03.19

5966

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

1395

18

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

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

2023.07.21

2952

3

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

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

2024.03.14

1989

12

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

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

2024.03.14

1727

8

热门下载

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

精品课程

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