社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

2020年下载量最高的102个Django软件包

马哥Linux运维 • 4 年前 • 1224 次点击  
2020年已经结束,是时候分析2020年最需要的Django软件包了。
0. Django
2020年,Django本身被下载了6550万次!如果将其与2019年的4100万次下载进行比较,这将是一个惊人的巨大提升。这是否意味着Django获得了+ 50%的流行度,或者CI / CD Pipline在开发实践中变得更加普及了
1. REST
一半的Django安装是与REST框架相关的。djangorestframework软件包的下载量超过3500万次。令人惊讶的是,旧的,错误的ddjango-rest-framework包被请求了500万次。
REST框架形成了它自己的一组配套软件包,它们也排在所有下载的顶部。
- djangorestframework 34 227 575- django-cors-headers 17 980 262- django-rest-framework 5 012 054- django-rest-swagger 3 834 364- djangorestframework-jwt 3 663 231- djangorestframework-simplejwt 3 285 074- graphene-django 2 447 735- django-rest-auth 2 238 789- djangorestframework-camel-case 1 913 461- djangorestframework-csv 1 819 678- django-tastypie 1 305 827- djangorestframework-stubs 973 349- djangorestframework-filters 902 035- djangorestframework-xml 891 171
更新:djoser — REST框架的身份验证程序包具有750208次下载,与前100名相比略有下降。
2.开发实用程序
开发过程助手是一种非常流行的软件包类别。静态类型的增长趋势将类型推断django-stubs包推入了前100名。似乎不是每个人都可以将Django升级到最新版本。在这种情况下,django-compactpackage有助于在遗留项目中使用现代的Django新功能
- django-extensions 16 406 788- django-debug-toolbar 10 453 779 - pylint-django 5 776 115- django-waffle 2 239 980- django-stubs 2 010 553- django-silk 1 738 951- django-compat 1 040 285
3. ORM扩展名和表单/序列化器字段
这就是我们最喜欢Django的地方:丰富的查询和许多本机DB类型支持开箱即用,并带有许多第三方软件包。
有时甚至很难选择。 我们将使用什么来获得树结构支持?django-treebead或django-mppt?如何保持更改历史记录-在具有django-reversion的单个表中,还是为每个具有django-simple-history的模型制作一个单独的表?
- django-filter 16 706 350- django-model-utils 5 855 904- django-timezone-field 5 135 947- django-import-export 4 059 689- django-phonenumber-field 3 788 927- django-mptt 3 530 540- django-countries 3 395 824- django-simple-history 2 929 907- django-taggit 2 500 534- django-mysql 2 429 771- django-polymorphic 2 424 916- django-localflavor 2 395 908- django-reversion 2 141 762- django-picklefield 1 998 291- django-treebeard 1 960 088- django-dirtyfields 1 752 146- django-jsonfield 1 382 853- django-bitfield 1 375 136- django-bulk-update 1 272 312- django-modeltranslation 1 093 761- django-modelcluster 907 941
4.测试
最近有关将pytest-django嵌入Django核心的讨论表明缺少一些重要功能。即便如此,pytest是Django项目中最受欢迎的替代测试运行器。
- pytest-django 12 145 477- django-nose 3 378 225- django-coverage-plugin 1 225 145
5.表格
表单是Django的一个很棒的部分,它大大减少了手动HTML编码。但是无法在完美上有所进步。大量的程序包允许在Django中调整表单渲染,并将于2020年投入使用。
- django-crispy-forms 5 130 503- django-widget-tweaks 2 603 999- django-formtools 2 348 083- django-ckeditor 1 720 610- django-autocomplete-light 1 425 283- django-bootstrap4 1 121 947- django-bootstrap3 1 119 687- django-multiselectfield 1 100 977- django-tinymce 963 423
6.缓存
Django开箱即用,具有完善的Memcache Cache后端集成,但是Redis仍然很流行,可以通过两个不同的第三方软件包之一启用。
它并不取决于用于缓存后端的内容:django-cacheops提供了便捷的QuerySet缓存和自动的,由事件驱动的细化失效快捷方式。
- django-redis 9 400 461- django-redis-cache 2 083 225- django-cacheops 1 130 117
7.Settings
我们都希望Django默认设置在默认情况下对部署更友好,但是使用django-environ的Django项目似乎只是其中的一小部分。其他人是否对os.environ.get满意?
- dj-database-url 7 573 407- django-appconf 6 783 029- django-environ 5 588 732- django-constance 1 159 432
更新:这篇文章的初始版本,错过了dj-database-url软件包的使用。

8.后台工作
在许多Django项目中,它可能是最重要的功能,但是很难估计实际使用情况。Celery库的最新版本可以直接使用,而无需任何其他Django特殊配置。Celery是Python世界中最流行的分布式任务队列。它具有3500万次下载。
- django-celery-beat 4 427 330- django-celery-results 3 308 005- django-celery 1 492 722- django-crontab 1 271 395- django-rq 972 330
更新:其他celery竞争者,离下载数不远dramatiq-342536 huey -330942

9.认证和授权
外部服务集成是身份验证类别中最需要的功能。行级权限领导者django-guardian多年来一直位居榜首。
- social-auth-app-django 4 228 917- django-allauth 3 563 403- django-oauth-toolkit 2 851 276- django-otp 1 945 657- django-guardian 1 797 562- django-auth-ldap 1 193 910
10.快捷方式和帮手
Django核心是否包含用于开发的所有内容?还是我们仍然缺少一些方便的快捷方式,这些快捷方式将实用程序包带到了下载列表的顶部?
- django-ipware 4 102 954- django-braces 2 250 861- django-user-agents 1 468 511- django-annoying 867 588
11.前端工具
对前端集成类别仅排名第11也算正常, 因为大多数项目都使用本机JavaScript工具,而不必理会Django集成。
- django-js-asset 3 924 030- django-webpack-loader 3 439 016- django-compressor 2 969 084 - django-pipeline 1 085 094
12.安全性
默认情况下,Django包含ClickJacking和CSRF攻击防护。第三方程序包提供通用的速率限制和登录尝试限制。django-csp甚至进一步限制了页面上JavaScript的执行,从而降低了内容注入漏洞(例如跨站点脚本,
- django-axes 2 071 982- django-ratelimit 1 341 813- django-csp 1 339 511
13.邮件
同样,使用云服务支持扩展Django核心功能的软件包类别。单个Amazon SES服务似乎与所有其他交易邮件服务一起受欢迎。
- django-ses 1 992 158- django-anymail 1 858 837
14.监控
改善Django监控的辅助工具。我们在这里缺少Sentry,因为很难在Django项目中拆分其用途,但是肯定地说,Sentry在一年中有4200万次下载,是其同类产品的领导者
- django-health-check 1 933 588- django-prometheus 1 742 891- django-log-request-id 1 041 023
15.Administration
多年来,Django后台管理变得越来越好。不需要太多的软件包即可对其进行更多改进。但是,具有漂亮外观的样式仍使django-grappelli居于首位。
- django-grappelli 1 518 684- django-admin-rangefilter 1 385 710- django-admin-sortable2 1 012 336- django-object-actions 1 015 603
16.搜索
最后一个类别-全文搜索支持。有没有想过与ElasticSearch一起使用的库是什么?我也是。
- django-haystack 1 255 008- django-elasticsearch-dsl 934 495
其他
那些非常棒的软件包在TOP 100下载中没有任何竞争对手。
使用django-storages将静态文件和媒体文件保存在云中,使用django-tables2,django-classy-tags和django-sekizai渲染更干净的模板,并使用django-fsm组织工作流程。
django-heroku是TOP 100中唯一有助于Django部署的软件包。这样的任务不是那么复杂,以至于没有其他软件包被创建吗?
- django-storages 13 080 397- django-tables2 1 439 101- django-fsm 1 395 410- django-classy-tags 1 307 024- django-heroku 1 193 323- django-sekizai 1 030 699

补充:
几个软件包的名称中没有提及Django。Wagtail的下载量是django-cms的两倍,因此绝对应该包含在TOP 100中
Django的最新版本具有内置的异步支持。 

- channels 3 050 679- wagtail 1 010 017
这就是Django Universe中按下载量计的前100名软件包。
那么到这里,给所有Django开发人员说一下,这就是我们在2020年的工作方式。你对明年的发展趋势有一个了解了吗?我们缺少什么package?最近是否有任何新的即将创建的工具? 欢迎在下方留言沟通。
文章转自:python运维技术
Django Model背后原理是什么?屡屡在面试中将你难倒的元编程究竟难在哪里?锁定3日(周三)晚20:00,Python大牛讲师Wayne带你搞懂Django背后的元编程!扫码报名立即参加↓↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/107097
 
1224 次点击