# Django **Repository Path**: zhangjun76/django ## Basic Information - **Project Name**: Django - **Description**: 个人Django学习笔记 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2023-12-21 - **Last Updated**: 2023-12-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 参考文档 官方参考文档: [https://docs.djangoproject.com/en/4.0/](https://docs.djangoproject.com/en/4.0/) 个人参考文档: Django【基础篇】 [https://www.cnblogs.com/wupeiqi/articles/5237704.html](https://www.cnblogs.com/wupeiqi/articles/5237704.html) Django【进阶篇 】 [https://www.cnblogs.com/wupeiqi/articles/5246483.html](https://www.cnblogs.com/wupeiqi/articles/5246483.html) Django之Model操作 [https://www.cnblogs.com/wupeiqi/articles/6216618.html](https://www.cnblogs.com/wupeiqi/articles/6216618.html) Django之Form组件 [https://www.cnblogs.com/wupeiqi/articles/6144178.html](https://www.cnblogs.com/wupeiqi/articles/6144178.html) Django REST framework [http://www.cnblogs.com/wupeiqi/articles/7281134.html](http://www.cnblogs.com/wupeiqi/articles/7281134.html) AJAX全套 [http://www.cnblogs.com/wupeiqi/articles/5703697.html](http://www.cnblogs.com/wupeiqi/articles/5703697.html) 生成随机验证码 [https://www.cnblogs.com/wupeiqi/articles/5812291.html](https://www.cnblogs.com/wupeiqi/articles/5812291.html) Django:haystack全文检索详细教程 - 秋寻草 - 博客园 [https://www.cnblogs.com/gcgc/p/10762416.html](https://www.cnblogs.com/gcgc/p/10762416.html) Exception Value: Request body exceeded settings.DATA_UPLOAD_MAX_MEMORY_SIZE. - 搜索 [https://cn.bing.com/search?q=Exception+Value%3A+Request+body+exceeded+settings.DATA_UPLOAD_MAX_MEMORY_SIZE.&qs=n&form=QBRE&sp=-1&pq=django+get_queryset_data&sc=2-24&sk=&cvid=88B3EB3605FA470CA0C22C99A4451CDD](https://cn.bing.com/search?q=Exception+Value%3A+Request+body+exceeded+settings.DATA_UPLOAD_MAX_MEMORY_SIZE.&qs=n&form=QBRE&sp=-1&pq=django+get_queryset_data&sc=2-24&sk=&cvid=88B3EB3605FA470CA0C22C99A4451CDD) (2条消息) 如何使用Django通用视图的get_queryset, get_context_data和get_object等方法_大江狗的博客-CSDN博客_django get_queryset [https://blog.csdn.net/weixin_42134789/article/details/80327619](https://blog.csdn.net/weixin_42134789/article/details/80327619) Django --static 静态文件的配置(static_url/STATIC_ROOT/STATICFILES_DIRS) - Be-myself - 博客园 [https://www.cnblogs.com/gengyufei/p/12632408.html](https://www.cnblogs.com/gengyufei/p/12632408.html) Django添加feeds功能 - 简书 [https://www.jianshu.com/p/ff54dc83455b](https://www.jianshu.com/p/ff54dc83455b) Django 富文本插件 mdeditor安装和使用 - 简书 [https://www.jianshu.com/p/08b758cef67e](https://www.jianshu.com/p/08b758cef67e) Django添加sitemap功能 - 简书 [https://www.jianshu.com/p/ceba03f14b18](https://www.jianshu.com/p/ceba03f14b18) 【Django2.0教程】24.使用Django Form表单_哔哩哔哩_bilibili [https://www.bilibili.com/video/BV1DW411u7kJ?spm_id_from=333.337.search-card.all.click&vd_source=0e1d8b972931d1e62b6ff31468574f3e](https://www.bilibili.com/video/BV1DW411u7kJ?spm_id_from=333.337.search-card.all.click&vd_source=0e1d8b972931d1e62b6ff31468574f3e) Django From表单 [https://www.bilibili.com/video/BV1mW411G7g6?p=135&spm_id_from=pageDriver](https://www.bilibili.com/video/BV1mW411G7g6?p=135&spm_id_from=pageDriver) # # What-什么是Django? ## 是什么 略 ## 基本原理 Django框架图MVC ![图片](data:image/jpg;base64,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) ## 重要技术细节 略 ## Django与Flask的区别 Django是个大而全的web框架,它内置许多模块,Flask是一个小而精的轻量级框架。Django功能大而全,Flask只包含基本的配置, Django的一站式解决的思路,能让开发者不用在开发之前就在选择应用的基础设施上花费大量时间。 * Django有模板,表单,路由,基本的数据库管理等等内建功能。与之相反,Flask只是一个内核,默认依赖于2个外部库: Jinja2 模板引擎和 WSGI工具集--Werkzeug 。 * Flask的使用特点是基本所有的工具使用都依赖于导入的形式去扩展,Flask只保留了Web开发的核心功能。 # Why-Django的优缺点? ## 适用场景 * Python实现,代码干净、整洁 * 提供管理后台,能够快速开发 * 复用度高,设计、使用上遵循DRY原则 * 易于扩展复用的中间件 * 内置的安全框架 * 丰富的第三方类库 ## 不适用场景 * 单体应用框架-不易并行开发,单点扩展 * 不适合非常小的几行代码的项目 * 不适合高并发的to C互联网项目 # How-Django的使用方法? ## Step1.初始化Django框架 ## Step2.设置Django-Url ## Step3.设置Django-Views ## Step4.设置Django-Models ## Step5.设置Django-Response-前后端不分离 ## Step6.设置Django-Response-前后端分离 ## Step7.设置Django-辅助插件 ## Step8.部署Django服务 # Example-Django实践案例? 略 # Next-Django接下来的发展趋势? 略 # Q&A-其他疑惑问答? 略