JetBrains logo

2025 Django 开发者调查
结果

这是根据官方 Django 开发者调查得出的第四份年度报告,调查时间为 2024 年 11 月至 2025 年 1 月,由 Django Software FoundationPyCharm 团队协作完成。

为了更好地了解框架及其周边生态系统的现状,本次调查收集了全球约 4,600 名 Django 用户和爱好者的回复。

查看之前的 Django 开发者调查报告:202320222021

分享:

Django 使用

您主要出于什么目的使用 Django?

70%

既用于工作,也用于我的个人、教育或副业项目

16%

仅用于工作

14%

仅用于我的个人、教育或副业项目

您使用哪个(哪些)版本的 Django?

2021 年2022 年2023 年2024 年
62%5.1
31%5.0
69%45%4.2
55%25%8%4.1
34%16%6%4.0
75%47%28%12%3.2
30%10%5%2%3.1
50%13%8%6%3.0 或更低版本
3%3%4%2%我不确定
0%75%

对于新项目,您使用哪个(哪些)版本的 Django?

75%

最新的稳定版本

21%

最新的 LTS 版本

3%

其他

如何创建新的 Django 项目?

59%

从头开始

31%

使用我的 IDE 或编辑器

19%

使用 Cookiecutter Django

8%

使用定制工具

2%

使用 DjangoX

1%

使用 Django Material Kit

1%

使用 Django React Boilerplate

7%

其他

您多久升级一次项目中的 Django?

2021 年2022 年2023 年2024 年
44%44%40%48%每个稳定版本
30%32%32%27%仅 LTS
14%13%15%11%每个月度修正版本
5%4%5%4%我使用不受支持的 Django 版本
7%7%8%10%其他
4%48%
Sarah Boyce
Django Fellow

很高兴看到社区中在每个稳定版本发布后升级的情况增多,而不是仅限于从 LTS 到 LTS。获得关于 Django 最近更改的反馈对我们来说至关重要,可以帮助我们修正任何回归问题并持续推动 Django 向前发展。

Jeff Triplett
REVSYS 合伙人、Python Software Foundation 前总监兼副主席

这是一个相当微妙但意义重大的变化。大多数 Django 用户使用最新版本,似乎很少有人关心 LTS 版本。

技术和框架

您使用什么数据库后端?

2021 年2022 年2023 年2024 年
77%79%76%76%PostgreSQL
41%40%43%42%SQLite
30%28%30%27%MySQL
10%10%10%9%MariaDB
2%2%6%7%Oracle
8%6%MongoDB
4%3%Microsoft SQL Server
6%6%4%2%其他
2%2%1%1%无/我不确定
0%79%

您使用什么缓存后端?

2021 年2022 年2023 年2024 年
47%54%54%52%Redis
16%16%25%数据库
17%18%18%本地内存
18%16%20%15%Memcached
8%8%8%文件系统
2%1%3%1%其他
43%27%24%22%
0%54%
Sarah Boyce
Django Fellow

不足为奇,使用最多的数据库后端都是那些具有内置支持的数据库后端。我对 Oracle 用户的增长感到惊讶!Oracle 维护起来颇具挑战,因此看到社区在使用它令人高兴。

您觉得哪种(哪些)Django contrib 应用最有用?

75%

admin

69%

auth

30%

postgres

22%

sessions

19%

staticfiles

13%

messages

12%

contenttypes

您使用什么 GeoDjango 后端?

2021 年2022 年2023 年2024 年
22%22%24%21%PostGIS
7%6%10%14%MySQL
1%1%4%10%Oracle
3%3%6%2%其他
72%72%66%65%无/我不确定
1%72%

所有占比低于 5% 的选项均已合并到“其他”。

您最喜欢的 3 个核心组件是什么?

68%

模型

48%

管理员

30%

迁移

28%

身份验证

25%

视图

14%

Django 管理命令

14%

模板

您使用什么模板引擎?

2021 年2022 年2023 年2024 年
79%81%78%83%Django 模板
14%14%16%13%Jinja2
1%2%3%2%其他
14%13%13%12%
1%83%
Jeff Triplett
REVSYS 合伙人、Python Software Foundation 前总监兼副主席

这证实了我们所看到的趋势,即越来越多的公司在服务器端应用中使用 Django 模板,结合 htmx、Alpine 和其他响应式框架。看到这一点真是很酷。

您的项目中使用哪种(哪些)类型的测试?

39%

pytest

33%

unittest

30%

pytest-django

21%

coverage

12%

django-test-plus

11%

Selenium

8%

Playwright

您使用什么测试框架?

2021 年2022 年2023 年2024 年
39%41%42%39%pytest
36%36%31%33%unittest
31%33%30%pytest-django
19%21%24%21%coverage
4%3%6%12%django-test-plus
12%10%15%11%Selenium
3%9%8%Playwright
6%6%5%4%tox
5%5%8%4%Cypress
4%4%9%3%其他
31%26%25%24%
0 个%42%

所有占比低于 5% 的选项均已合并到“其他”。

您使用哪些异步技术?

2021 年2022 年2023 年2024 年
24%25%28%37%ASGI
22%23%25%25%asyncio
16%18%21%24%Fast API
13%15%19%20%Uvicorn
16%15%18%16%Channels
10%11%14%14%Django 的异步视图
9%9%13%14%Daphne
5%4%7%9%Starlette
4%5%9%6%asgiref
5%6%23%4%其他
49%47%39%36%
0 个%49%

所有占比低于 5% 的选项均已合并到“其他”。

您使用什么 JavaScript 框架?

0

10

20

30

40

2021 年2022 年2023 年2024 年ReactjQueryhtmxVueAlpine.jsSvelteAngular其他BackboneEmberMako
William Vincent
JetBrains 技术布道师

htmx 已迅速成为 Django 开发者最受欢迎的 JavaScript 前端选择之一。

您使用什么 CSS 框架?

52%

Bootstrap

32%

Tailwind CSS

23%

纯 CSS

7%

Material Design/Lite

4%

Bulma

2%

UI Kit

1%

Foundation

您最喜欢的 5 个第三方 Django 软件包是什么?

49%

djangorestframework

27%

django-debug-toolbar

26%

django-celery

19%

django-cors-headers

18%

django-filter

18%

django-allauth

15%

pytest-django

Sarah Boyce
Django Fellow

作为 Django REST 框架 (DRF) 的替代方案,django-ninja 的受欢迎度持续上升。不过,DRF 仍然是 Django 社区的核心,许多项目都基于它构建。

您使用 Django 做什么?

80%

全栈开发

51%

使用 DRF 的 RestAPI

5%

其他

您是否以专业方式使用 Django 编写代码?

82%

7%

否,但我有 Django 编程经验

6%

否,我只是在学习使用 Django 编程

6%

否,使用 Django 编程对我来说只是一个爱好

您使用哪种(哪些)任务队列库?

49%

Celery

7%

RQ

6%

DjangoQ

3%

APScheduler

2%

Huey

2%

Dramatiq

5%

其他

40%

我不使用任何任务队列库

开发工具

您的主要文本编辑器或 IDE 是什么?

45%

VS Code

37%

PyCharm

5%

Vim

2%

Cursor

2%

Sublime Text

2%

Emacs

1%

Notepad++

5%

其他

您的主要本地操作系统是什么?

37%

macOS

33%

Linux

19%

带 WSL 的 Windows

10%

不带 WSL 的 Windows

1%

其他

您使用什么持续集成 (CI) 系统?

43%

GitHub Actions

24%

GitLab CI

9%

Jenkins/Hudson

3%

CircleCI

3%

AWS CodePipeline

3%

Azure Pipelines

2%

Google Cloud Build

1%

TravisCI

1%

TeamCity

4%

其他

34%

您使用什么配置管理工具(如果有)?

18%

Ansible

6%

自定义解决方案

4%

Fabric

2%

Puppet

2%

Salt

1%

Chef

2%

其他

71%

您使用哪种(哪些)基础架构即代码 (IaC) 工具?

17%

Terraform

5%

AWS CloudFormation

3%

Vagrant

1%

Pulumi

1%

Puppet

1%

Azure Resource Manager

1%

Salt

1%

Google Cloud Deployment Manager

2%

其他

73%

语法和文档

您目前在 Django 代码中是否使用类型提示?

您使用哪种类型检查器?

46%

仅使用我的 IDE 或编辑器

26%

Mypy

21%

Pyright / Pylance

14%

Pytype

2%

其他

9%

您为您所参与的软件的文档做了多少贡献?

31%

一点,或者几乎没有

30%

一些,或者有时

26%

许多,或者经常

13%

无,或者从来没有

对于您参与的软件,你们使用什么来托管和发布文档?

33%

readme

14%

GitHub Pages

14%

阅读文档

10%

Atlassian Confluence

9%

MkDocs

2%

GitBook

6%

其他

25%

我们自行托管文档

30%

我们不发布文档

你们如何使用 Swagger/OpenAPI?

70%

从我们的后端生成规范

58%

将其用于文档目的

20%

根据给定规范编写新代码

2%

其他

你们使用什么系统和语言来创建和构建文档?

2022 年2023 年2024 年
64%57%62%Markdown
37%37%41%Swagger/OpenAPI
24%23%20%Sphinx
14%16%14%Postman
17%17%13%rST
13%16%10%wiki
8%8%6%其他
19%16%18%
0%64%

所有占比低于 5% 的选项均已合并到“其他”。

对于您参与的软件,你们在文档中采用什么原则?

82%

没有明确采用信息架构

28%

正式文档审查

13%

基于主题的结构

12%

没有相关文档的代码将不会被合并

11%

明确的贡献者风格指南

7%

包容性语言

4%

Diátaxis

1%

DITA

4%

其他

语言和框架

Python 是您的主要编程语言吗?

83%

86%

13%

13%

不,我使用 Python 作为次要语言

3%

1%

其他

注意:今年,我们观察到不以 Python 为主要语言的受访者数量异常高。为了考虑这一点并保持与前三年趋势的一致性,我们对数据进行了相应的加权。这一调整帮助消除了异常,并让我们可以更清楚地了解逐年变化。

除 Python 外,您还使用什么编程语言?

70%

JavaScript

64%

HTML / CSS

44%

SQL

39%

Bash/Shell

27%

TypeScript

25%

C/C++

11%

Go

您的主要编程语言是什么?

此问题仅向在先前问题中未选择 Python 作为主要编程语言的受访者显示。

70%

C/C++

6%

JavaScript

5%

TypeScript

4%

Java

3%

PHP

2%

C#

2%

Go

除 Django 外,您还使用什么 Web 框架?

29%

React.js

28%

FastAPI

23%

Flask

18%

JQuery

18%

Vue.js

12%

Angular.js

11%

ASP.NET Core

您最常用的 Web 框架是什么?

77%

Django

4%

React.js

3%

ASP.NET Core

3%

Tornado

3%

Angular.js

2%

FastAPI

1%

Vue.js

资源

您使用以下哪项来关注 Django 开发?

60%

djangoproject.com

22%

YouTube

18%

Stack Overflow

18%

Reddit

15%

Django 论坛

12%

Django 简报

9%

朋友

8%

Hacker News

7%

播客

7%

X

6%

Discord

5%

Fediverse

4%

RSS

4%

Google 网上论坛

1%

IRC

4%

其他

18%

我不关注 Django 开发

您更喜欢使用以下哪一项来学习 Django?

79%

djangoproject.com

39%

StackOverflow

38%

AI 工具

38%

YouTube

33%

博客

22%

书籍

13%

朋友/同事

5%

付费视频

5%

播客

3%

其他

2%

William Vincent
JetBrains 技术布道师

AI 工具作为学习 Django 的手段正在增长,而博客、书籍甚至 YouTube 的份额都在下降。

除了官方 Django 频道,您还阅读或关注哪些 Django 网络资源?

Python 版本

您通常用什么来升级您的 Python 版本?

45%

Python.org

29%

操作系统提供的 Python

27%

Docker 容器

23%

pyenv

10%

我的 IDE 或编辑器

5%

Anaconda

3%

从源代码构建

您使用哪个(哪些)版本的 Python?

2021 年2022 年2023 年2024 年
26%3.13
54%3.12
65%42%3.11
13%58%46%31%3.10
60%51%29%16%3.9
53%36%20%19%3.8
31%17%8%3%3.7
23%8%4%3%3.6 - 3.0
6%4%4%2%2.x
5%3%1%其他
2%2%4%2%我不确定
0%65%

您使用以下哪种(哪些)工具隔离 Python 环境?

59%

venv

46%

Docker

30%

Virtualenv

18%

Poetry

12%

Pipenv

10%

Vagrant/虚拟机

7%

Conda

10%

其他

2%

您使用什么代码格式化程序?

2021 年2022 年2023 年2024 年
35%51%52%40%Black
30%23%26%26%autopep8
18%28%29%21%isort
19%18%17%pre-commit
6%5%10%17%其他
35%28%24%25%
0%52%

所有占比低于 5% 的选项均已合并到“其他”。

您使用什么 linter?

2021 年2022 年2023 年2024 年
40%43%37%34%Flake8
26%41%42%30%Black
28%Ruff
37%33%29%24%pylint
14%18%20%14%mypy
4%3%11%2%其他
26%23%21%22%
0%43%

您最依赖哪 5 个 Python 软件包?

42%

Requests

35%

pandas

33%

Psycopg2

29%

Celery

28%

pytest

27%

NumPy

27%

Pillow

您使用什么云托管平台(如果有)?

38%

AWS

28%

DigitalOcean

21%

Google Cloud Platform

10%

OpenStack

9%

Microsoft Azure

9%

Heroku

8%

PythonAnywhere

5%

Linode

3%

Fly.io

1%

OpenShift

16%

其他

21%

您使用哪种(哪些)容器编排服务?

23%

Amazon ECS / Fargate

12%

Kubernetes

8%

Docker Swarm

8%

Amazon EKS

5%

Google Kubernetes Engine

3%

Azure Kubernetes Service

3%

Google Cloud Run

1%

OpenShift

1%

HashiCorp Nomad

4%

其他

50%

您如何在云中运行代码?

51%

在容器内

41%

在虚拟机中

17%

在平台即服务上

8%

无服务器

2%

其他

13%

我不使用这些工具中的任何一个

您如何为云进行本地开发?

56%

使用 virtualenv

52%

在 Docker 容器中

9%

在虚拟机中

6%

在远程开发环境中

6%

使用本地系统解释器

2%

直接在生产环境中

2%

其他

10%

容器

您使用 Docker 容器或类似的工具吗?

57%

我在开发过程中使用容器

44%

我构建的应用程序在生产环境的容器中运行

40%

在 CI/CD 流程中使用容器

2%

我将容器用于其他目的

25%

不/我不确定

您在 Docker 容器中运行哪些内容?

91%

我开发或我的团队开发的应用程序代码

57%

我的代码连接到的支持服务

16%

我在开发过程中使用的实用工具

2%

其他

在开发过程中,您在哪里运行代码?

63%

在 virtualenv 内

53%

在容器内,在我的计算机上

29%

在我的计算机上使用系统解释器

8%

在容器内,在另一台计算机上

5%

在容器外的另一台计算机上

1%

其他

在开发过程中您如何将代码部署到远程容器?

58%

我使用持续集成

40%

我在本地构建容器镜像,然后推送镜像

39%

我将代码转移到主机并在那里构建容器

13%

我远程连接到 Docker 引擎

6%

其他

您如何调试您的应用程序?

80%

使用 print 或者 log 语句

52%

使用我的 IDE

32%

使用 shell / pdb

2%

其他

您是在远程主机上还是在容器中调试您的应用程序?

29%

我只使用 log 语句

24%

我经常在远程运行或在容器中运行的应用程序上使用调试器

19%

我已经附加过一到两次调试器

27%

不支持

社区

你们是否为项目所依赖的任何第三方库、框架或工具提供赞助?

18%

82%

不支持

您是否了解可用于支持 Django Software Foundation (DSF) 的资助选项?

51%

49%

不支持

您是否曾参加过与 Django 相关的活动或聚会?

71%

不支持

21%

是,在较小规模的 Django 聚会或本地 Django 相关活动中

8%

是,在 DjangoCon 或类似规模的 Django 相关活动中

Sarah Boyce
Django Fellow

DjangoCons 仅向社区中的少数成员开放,这也是为何本地聚会和活动值得庆祝。您可以在 Django 网站上查找您所在地区聚会的信息,或者参加本地 Django Girls 活动或担任活动志愿者。

您是否希望在 Django 核心中添加类型提示?如果是,您是否愿意为此做出贡献?

45%

是,我愿意做出贡献

39%

是,但我不会做出贡献

16%

不支持

绝大多数受访者 (84%) 支持向 Django 核心添加类型提示,近半数 (45%) 表示愿意自行贡献。这种兴趣和参与程度表明该话题与社区高度相关。

您希望哪种(哪些)软件包被集成到 Django 核心中?

52%

django-cors

41%

django-environ

38%

django-extensions

28%

whitenoise

19%

dj-database-url

12%

django-csp

22%

其他

AI

您曾在 Django 开发中使用或尝试过以下哪种(哪些)AI 工具?

69%

ChatGPT

34%

GitHub Copilot

15%

Anthropic Claude

9%

JetBrains AI Assistant

7%

Cursor

7%

Google Gemini

7%

Codeium

使用 Django 时,您会使用 AI 工具来完成以下哪种(哪些)任务?

56%

代码自动补全

51%

生成代码

44%

生成大量样板代码、重复代码

36%

生成测试

35%

解释代码

34%

询问有关软件开发和编码的问题

33%

生成代码注释或代码文档

统计数据

您使用 Django 处理哪种(哪些)类型的项目?

83%

网站

41%

业务应用程序

41%

Web 服务

18%

DevOps/系统管理/编写自动化脚本

16%

数据分析/数据工程

14%

开发工具

12%

云服务

您开发哪种(哪些)类型的网站?

61%

企业网站

39%

个人或作品集网站

31%

产品的 Web 界面

29%

电子商务网站

21%

博客/社交媒体/论坛平台

19%

信息网站

18%

内部网门户

您目前的就业状况如何?

65%

公司或组织全职员工

8%

企业所有者或创始人

7%

个体户

5%

自由职业者

5%

学生

4%

公司或组织兼职员工

3%

目前失业

2%

在职学生

1%

退休

1%

其他

您的工作职责是什么?

85%

开发者/程序员/软件工程师

16%

团队主管

15%

架构师

13%

首席技术官/首席信息官/首席执行官

11%

数据分析师/数据工程师/数据科学家

6%

产品经理

5%

讲师/教师/导师

贵公司的规模有多大?

10%

只有我

20%

2–10 人

21%

11–50 人

19%

51–500 人

5%

501–1,000 人

6%

1,001–5,000 人

19%

超过 5,000 人

1%

不确定

您的团队中有多少人?

9%

只有我

59%

2–7 人

13%

8–12 人

5%

13–20 人

2%

21–40 人

13%

超过 40 人

您是在团队中工作还是独立工作?

67%

我在团队中工作

30%

我独立从事自己的项目

3%

我担任外部顾问或培训师

您参与多少个项目?

52%

许多不同的项目

36%

一个主项目和几个副项目

12%

仅一个项目

以下哪个行业最能描述贵公司的业务?

27%

信息技术/软件开发

8%

会计/金融/保险

7%

教育/培训

6%

医疗/卫生

4%

销售/分销/业务开发

4%

非营利

4%

科学

您有多少年的完整专业编码经验?

9%

不足 1 年

13%

1–2 年

21%

3–5 年

26%

6–10 年

30%

11 年或更长

您使用 Python 编程有多长时间了?

4%

不足 1 年

12%

1–2 年

28%

3–5 年

34%

6–10 年

22%

11 年或更长

您处于什么年龄段?

4%

18-20 岁

28%

21-29 岁

38%

30-39 岁

19%

40-49 岁

7%

50-59 岁

2%

60 岁或以上

1%

不便回答

您位于哪个地区?

41%

欧洲

25%

北美洲

20%

亚洲

8%

非洲

7%

南美洲

4%

中东

3%

大洋洲

2%

中美洲

2%

加勒比地区

2%

其他

方法和原始数据

想进一步挖掘数据吗?

下载匿名调查回复,看看您能学到什么!在 X(以前称为 Twitter)上使用话题标签 #djangosurvey 提及 @pycharm@djangoproject,或在 Mastodon 上提及 @django,分享您的发现和洞见。您还可以在 Django 论坛Django Discord 服务器上参与讨论并分享您对本次调查的想法。

在剖析数据之前,请注意以下重要信息:

数据集仅包含来自官方 Django Software Foundation 渠道的回复。这些回复通过在官方 Django 渠道(例如 djangoproject.comDSF 的 X 账号)上的调查推广在 2024 年 11 月至 2025 年 1 月期间收集,未涉及任何 PyCharm 渠道。为了尽可能减少对任何特定工具或技术的偏向,收集回复时未使用任何与产品、服务或供应商相关的渠道。

今年,我们观察到受众构成发生变化,C/C++ 用户的比例显著增加。因此,数据可能与往年有所不同。在滤除无关或不可靠的回复后,数据集包含 4,655 份回复。

以下是我们使用的过滤标准:

任何满足以下任意条件的回复都会被滤除:
  • 未满 18 岁。
  • 未回答“您有多少年的专业编码经验?”这一问题。
  • 年龄在 21 岁以下,但拥有 11 年以上的专业编码经验。
  • 多项选择题的单选回答太多(不包括回答“无”)。
  • 来自相同电子邮件地址的多份回复(我们只保留并使用了一份回复)。
任何同时满足以下两个或以上条件的回复也将被滤除:
  • 使用超过 10 种编程语言。
  • 报告超过 8 种工作角色。
  • 在回答“您使用 Django 处理哪种(哪些)类型的项目?”时选择了超过 10 个选项。
  • 所选国家/地区按字母顺序排在列表顶部,不在热门国家/地区之列。
  • 同时担任“首席执行官”和“技术支持专员”工作角色。
  • 担任首席执行官,但未满 18 岁。
  • 总体选择的答案太多。
  • 回答太快(每个问题不到 5 秒)。

数据均已匿名处理,不含个人信息或详细地理位置信息。此外,为了防止经逐字评论识别任何个别受访者身份,已删除所有开放式字段。

为了帮助您更好地理解调查的逻辑,我们将共享数据集、调查问题以及所有调查逻辑。

我们再次代表 Django Software Foundation 和 PyCharm 感谢参与本次调查的所有人。

如果您有任何疑问或建议,请发送电子邮件至 surveys@jetbrains.com 与我们联系。

加入 JetBrains Tech Insights Lab

参与调查和 UX 研究,让 JetBrains 产品更易用、更强大。参与我们的研究,您还将有机会获得奖励。

感谢您的参与!

我们希望您觉得我们的报告有用。与您的朋友和同事分享这份报告!

分享: