Django 初学者教程:特性、架构和历史
Django 教程总结
本 Django 教程从头开始涵盖所有基础主题。在本教程中,您将了解 Django 是什么、Django 历史、Django 特性、Django 框架的特点、Django 的组件、优点和缺点等概念。
在学习 Django 之前,让我们了解一下:主页>
什么是 Web 框架?
Web 框架是一个代码库,可帮助您构建灵活、可扩展和可维护的;动态网站、Web 应用程序和 Web 服务。不同的 Web 框架有 Zend for PHP、Ruby on Rails for Ruby 等。
什么是 Django?
姜戈 是一个 Python 的 Web 开发框架,它为快速有效的网站开发提供标准方法。这个高级 Web 框架的主要目标是创建复杂的数据库驱动网站。它可以帮助您构建和维护高质量的 Web 应用程序。它使您能够使开发过程顺利且省时,从而实现快速开发。
在这个面向初学者的 Python Django 教程中,您将学习
- 什么是 Web 框架?
- 什么是 Django?
- 为什么选择 Django? Django 的主要优势
- Django 的历史
- Django 的特点
- Django 的特点
- Django 架构
- Django 的组件
- 使用 Django 的知名公司
- 使用 Django 的缺点
为什么是 Django? Django 的主要优势
以下是 Django 的主要优点:
- Django 易于设置和运行。它提供了多种入门选择
- 它为管理活动提供了一个现成的用户界面
- 它通过使用其内置的国际化系统支持多语言网站
- 帮助您快速满足海量流量需求
- Django 用于构建所有类型的内容管理系统、社交网络以及科学计算平台。
- Django 帮助您提供端到端的应用程序测试
- 帮助您使用 HTML 输出记录您的 API
- REST 框架对多种身份验证协议具有丰富的支持
- 权限和限制政策
- 它广泛用于限制来自单个用户的 API 请求。
Django 的历史
年份 | 里程碑 |
---|---|
2003 | 该项目由 Adian Holovaty 和 Simon Willison 作为 Lawrence Journal-World 报纸的内部项目启动 |
2005 年 7 月 | 2005 年 7 月以爵士吉他手 Django Reinhard 的名字命名的“Django”发行 |
2008 年 6 月 | 宣布 Django 软件基金会 (DSF) 将维护 Django。 |
2009 年 7 月 29 日 | Django 1.1 版本发布,具有聚合、基于事务的测试等功能。 |
2010 年 5 月 17 日 | Django 1.2 版本发布。此更新提供了多个数据库、电子邮件后端的实现以及会话和 cookie 的改进等功能。 |
2011 年 3 月 23 日 | 1.3 版本引入了基于类的视图、静态文件等功能 |
2012 年 3 月 23 日 | 1.4 版本推出,具有时区和浏览器内测试等新功能 |
2013 年 2 月 26 日 | 1.5 版本自带 Python 3 支持,可配置用户模型功能。 |
2013 年 11 月 6 日 | 1.6版本自带DB事务管理、连接池功能。 |
2014 年 9 月 2 日 | 1.7 版本具有应用加载、迁移和配置等新功能 |
2015 年 4 月 1 日 | 为多个模板引擎提供原生支持。 |
2015 年 12 月 1 日 | 在 1.9 版本中,引入了自动密码验证功能。 |
2016 年 8 月 1 日 | 在 1.10 版本中推出 PostgreSQL 全文搜索。 |
2017 年 4 月 4 日 | 1.11 版本成为支持 Python 2.7 的最后一个版本 |
2017 年 12 月 2 日 | 2.0 版成为第一个仅 python 3 的发布版本。 |
2018 年 8 月 1 日 | 2.1 版带有模型“查看”权限支持功能。 |
2021 | 删除了对 Django 3.0 的支持并添加了 Django 3.2 支持 |
现在在这篇 Django 初学者教程中,让我们了解一下 Django 的特性。
Django 的特点
以下是 Django 的特点:
- 帮助您为应用程序中的 URL 定义模式
- 简单而强大的网址系统
- 内置身份验证系统
- 面向对象的编程语言数据库,提供一流的数据存储和检索
- 自动管理界面功能允许添加、编辑和删除项目的功能。您可以根据需要自定义管理面板。
- 缓存框架自带多种缓存机制。
现在在这个Django框架教程中,我们将了解Django的特性。
Django 的特点
以下是 Django 的主要特点:
- 松耦合 - Django 帮助您使其堆栈中的每个元素独立于其他元素。
- 更少的代码 - 确保有效的开发
- 不重复 - 一切都应该在一个地方精确地开发,而不是重复一遍
- 快速开发 - Django 提供快速可靠的应用程序开发。
- 一致的设计 - Django 保持简洁的设计,并使其易于遵循最佳 Web 开发实践。
接下来在这个 Django 初学者教程中,我们将了解 Django 的架构。
Django 架构:MVC 和 MVT
下面是Django的详细架构:
<中心>
<图>Django 架构
图>
MVC 模式:
在谈论提供 UI(Web 或桌面)的应用程序时,我们通常会谈论 MVC 架构。 MVC 模式基于模型、视图和控制器。
模型 定义数据结构并负责查询数据库。
视图 定义应呈现的数据并返回 HTTP 响应。
控制器 是应用程序中处理用户交互的部分。
Django MVC-MVT 模式
与 MVC 相比,模型-视图-模板 (MVT) 是一个不同的概念。这两种架构模式的主要区别在于 Django 本身管理控制器部分(控制模型和视图之间交互的软件代码)。模板是一个 HTML 文件,混合了 Django 模板语言文件,也称为 DTL。
下图显示了 MVT 模式的所有组件如何相互交互以针对用户请求提供服务。
Python