什么是 Django Stack?简介

已发表: 2022-07-01

著名的 Python 框架 Django 遵循“包含电池”的原则。 框架中包含了开发 Web 应用程序所必需的基本功能,而不是作为不同的库提供。 Django 用于开发一些知名网站,包括 Spotify、Instagram、YouTube、Pinterest 和 Quora。

Adrian Holovaty 与新闻门户 World Online 的两名程序员 Simon Willison 一起创建了 Django。 Django 于 2005 年作为一项开源计划向公众开放。Adrian 和 Simon 需要一个工具,让他们能够快速构建网站。 Django 目前被公认为是截止日期驱动的天才的服务器端脚本语言。

目录

什么是姜戈?

名为 Django 的高级 Python Web 框架有助于快速创建安全可靠的网站。 由于它是一个全栈框架,所有基本功能都默认提供,而不是作为单独的模块提供。 由专业程序员创建的 Django 处理了与 Web 编程相关的许多困难,使您可以专注于开发应用程序而无需重新创建轮子。

何时使用 Django,为什么?

实现 Django 的部分是快速构建产品的能力。 一个不存在的产品就没有成功的希望。 一些伟大的企业都是利用这项技术创建的。 由于 Django,他们可以迅速开发和启动他们的服务。

它建立在 Python 之上,Python 是使用最广泛且用户友好的编程语言之一,以其支持社区和广泛的库而闻名。 Django 以其功能性、可靠性和社区性而闻名。 此外,他们的要求是软件行业中最好的。

对于 Web 开发,应在以下情况下使用 Django:

  • 用于为 API 或 Web 应用程序创建后端
  • 快速开发某些 Web 应用程序
  • 满足您需求的快速应用程序部署和可扩展性
  • 用于使用数据库而不是数据库查询的理想 ORM
  • 建立可用于提交或检索数据的安全单页应用程序。

由于使用 Django 的快速编程能够快速引入高级功能并保持个人兴趣,Disqus 很快发展壮大并获得了数百万会员。 有软件可以处理你需要做的每一个复杂的任务。 此外,Django 会跟踪每个当前的 Internet 问题,并在发现问题后尽快发布补救措施,从而使您的 Web 服务更加可靠。

谁使用 Django?

学习 Python 和 Django 是一种奇妙的体验。 然而,仅靠理论理解是不够的。 将您的理论知识应用于特定的实际用例至关重要,为此创建 Django 项目将是一项必要的活动。

学习 Django 和任何其他范例的最佳方式是使用它来处理实际项目。 构建 Django 应用程序将为您提供实践经验并为就业市场做好准备。 项目帮助我们更有效地学习。 只需查看几个 Django 应用程序示例,就可以看出基础设施对您的 Django 程序有多大用处。

1.Instagram

Instagram

Instagram 是一个社交媒体网络平台,用户可以在其中发布图片和视频。 该应用程序将在有史以来最大的部署中使用 Django Web 技术。

Python 因其实用性和灵活性而成为 Instagram 的绝佳选择。 但随着平台的发展,有效性变得越来越重要。 Instagram Development 本可以通过使用 Django 创建独特的工具来实现这一目标。

2. Disqus

迪克斯

Disqus 可以在网页上发表评论。 博客和在线组织提供个人资料、网络网站和其他形式的社交整合,主要使用 Disqus 让消费者感受到联系。

Django 一直毫不犹豫地成为 Disqus 技术栈的一部分。 根据 Django 的多功能性,Disqus 每月可处理 80 亿次页面访问,2013 年每秒可处理 45,000 次查询。

3.品脱

其他一些类似于 Instagram 的社交网站包括 Pinterest。 然而,Pinterest 的主要目标是让客户探索与设计、家居、食物等相关的主题的灵感,即使您可以以同样的方式发布照片。

该平台的许多吸引力可能归功于其用户友好的布局。 由于 Django 的开源性质,Pinterest 可以更改概念模型以满足其要求。

4. 火狐浏览器

火狐

您可能要感谢国际组织 Mozilla 开发了著名的 Firefox 浏览器。 尽管难以置信,Firefox 甚至比 Google Chrome 更好更快地管理一些任务,尤其是在负载优化和 RAM 使用方面。 Firefox 可以使用 Django 更有效地处理大量流量和 API 请求。

5. Spotify

Spotify 音乐流媒体应用程序徽标

Spotify 提供在线音乐流媒体服务。 全球互联网用户在线收听数字音乐(偶尔还有播客)。 Python 将用于 Spotify 的研究方法和后端服务。 此外,Spotify 利用一些 Django 应用程序来增强功能。

6. YouTube

YouTube

Python 在 YouTube 上广泛使用,可用于访问标准数据、管理视频管理、控制网页布局和其他一些事情。 Python 在 YouTube 上随处可见。

为什么 Django 是一个好的 Web 框架选择?

Python 仍然是最好和最广泛使用的语言之一。 根据 TIOBE,Python 是顶级服务器端系统之一。 根据 BuiltWith 的说法,Python 被大约一百万个网页使用。

  • 健壮和快速: Python 功能强大且用途广泛; 它可以用于一切。 事实上,它通过配置和标准库提供了许多功能,基本上涵盖了任何开发活动,这意味着它将被用于一切。
  • 与他人相处融洽: Python 足够强大,可以与高级编程语言进行通信。 Python 项目同样可以集成到其他语言框架中。 因此,您可以将 Python 与其他脚本语言(如 C++)结合使用,以开发提供两全其美的应用程序。
  • 随处运行:几乎所有控制器,包括基于 UNIX、Windows、macOS、iOS 和 Android 的控制器,都支持 Python。 它还支持各种系统,即 IBM、AIX、Solaris 和 VMS。
  • 响应迅速且易于理解: Python 的简单语法和可读性使其成为一种非常有用的编码语言。 由于 Python 是一门简单易学的语言,因此技能库就足够了。 用户体验是 Python 的内置属性,因为括号,其他几个特殊字符不用于标记脚本语言的开始和结束。
  • 开源:一个名为 Python 软件协会的自治非营利组织负责并为 Python 的开源编程提供支持。 它的主要好处之一是开源软件仍然可以免费使用、更改和流通。

Django 架构

MVT(模型-视图-模板)架构是 Django 的基础。 用于创建 Web 应用程序的软件开发模式称为 MVT。 Outlook 是在窗口中加载网页时出现的用户友好界面。 Jinja 文件、HTML、CSS 和 Javascript 文件代表它。

建立网站时通常需要一组可比较的元素:处理身份验证过程(注册、批准和退出)的方法、网页的维护仪表板、表单、上传文件的方法等。您可以利用Django 提供的预制组件。

Django的MVT结构有以下三部分

Django中MVT架构的控制流程
Django中MVT架构的控制流程

MVT(模型-视图-模板)架构是 Django 的基础。 用于创建 Web 应用程序的软件开发范例称为 MVT。

MVT结构的三个要素如下:

1. 型号

该模型将用作数据的接口。 它负责数据维护。 它由存储库定义,用作整个程序的认知数据库表。

2.查看

视图将是您在网站上制作网页时出现的用户友好界面。 Jinja 文件、HTML、CSS 和 Javascript 文件对其进行了描述。

3. 模板

模板必须由预期的 HTML 输出的静态组件和指定在何处引入变量信息的独特语法组成。

聘请专门的 Web 和应用程序开发人员

我们帮助您构建面向未来的应用程序

学到更多

核心 Python 和 Django 有什么区别?

Django 和 Python 是相关的,但又彼此不同。 Python 将是一种用于各种用途的服务器端语言,包括桌面程序、高级分析和人工智能。 另一方面,Django 将成为网络服务器和全栈网站开发的 Python 范例。

您可以使用核心 Python 的编程语言创建一个网站并自己提出答案,或者您可以使用 Django 来创建您的应用程序和预先编写的代码。

Django的替代品

如果您使用 Python 部署端点或构建网站,您可能听说过 Flask 或 Django。 Flask 和 Django 已成为与 Python 中的 Web 服务器几乎可以完成的任何事情相关的主流技术。

1. 瓶子框架

The Bottle 是一个非常紧凑的 Python WSGI 微框架。 它是免费的开发和传播,并在 MIT 许可下提供。 Bottle 包含在一个没有先决条件的小型 Python 包中,这一事实是一个显着的好处。 一旦您可以部署您的 API,这将非常容易地简化一切。

2. TurboGears 框架

毫无疑问,TurboGears 应该作为一个全栈框架包含在内,因为这就是它的初衷。 TurboGears 的灵活性非常好。 该架构可以使用各种简单的 WSGI 插件进行扩展。 它还具有分片或水平数据拆分功能。 就语法而言,TurboGears 很可能与 Python 编码器习惯于这种语言的任何东西完全不同。

3. Web2py Web 框架

我们都熟悉的这个列表中的一个范例是 Web2py。 另一个非常强调事物的全栈方面的模块是 Web2py。 Web2py 仅依赖于 Python 编程语言,很像 Bottle。 我发现 Web2py 的惊人之处在于它可以实现与包括 Django 和 TurboGears 在内的框架相当的目标,同时仍然更轻更简单。

4. Quixote Web 框架

另一个与面向对象架构完美集成的框架是 Quixote。 该框架强调速度和适应性,但采用起来可能具有挑战性。 Quixote 没有强加表示逻辑和“后端”逻辑之间的分离。 这可以被视为一个好处和一个缺点。

如何安装 Django?

如果计算机上尚未安装 Python 3,请使用此处的说明安装它。 尝试获取最新版本的 Python 3.6.4。

虽然我们演示了如何在 Windows 上设置 Django,但 Linux 和 Mac 的过程基本相同。 在 Linux 或 Mac 上打开终端而不是命令行界面并维护命令行。

  • 通过在命令行中键入以下命令来安装 pip。
 python -m pip install -U pip
  • 通过在 cmd 中键入以下命令来安装虚拟环境。
 pip install virtualenv

创建虚拟环境:通过创建虚拟环境,您可以以在您的机器上通常不可能的方式更改依赖关系。

要创建虚拟体验,请执行以下步骤:

  • 您可以使用 cmd- 生成一个新域
virtualenv env_site
  • 使用此命令将目录更改为 env 站点:
 cd env_site
  • 通过转到 env 站点内的脚本部分来激活虚拟环境。
 cd Scripts
 activate

通过运行以下命令安装 Django:

 pip install django
  • 回到 env 站点目录
  • 通过执行命令开始一个项目-
  • 转到目录中的站点。
  • 通过在 cmd 中输入即将到来的命令来启动网络服务器。

转到您的 Web 浏览器并键入 http://127.0.0.1:8000/ 作为 URL,以查看服务器是否恢复运行。

在 Django 中创建项目

让我们看看如何使用 Django 在您的计算机上安装后构建一个简单的项目。

在您的计算机上打开终端并包含启动 Django 项目所需的命令。

 django-admin startproject projectName

将生成一个名为 projectName 的新文件夹。 在终端使用 enter 命令,进入项目

cd projectName

现在走,

 Python manage.py runserver

现在访问http://localhost:8000/,

如何在 Django 中创建应用程序?

Django 独特且完全受控的应用程序架构是众所周知的。 可以使应用程序执行任何活动,例如独立模块。 这篇文章将向您展示如何构建一个基础应用程序并添加功能。

您需要导航到包含 manage.py 的目录并从那里运行命令以在 Django 项目中构建一个简单的应用程序:

 python manage.py startup project app

您的目录排列现在可能如下所示:

  • 要为您的项目考虑应用程序,您必须在设置中包含以下信息。
  • 所以现在我们已经有了一个应用程序,我们需要将它包含在我们的主程序中,以便可以根据提供使用 URL 的软件来处理发送给它的 URL。
  • 您现在必须在 URL 模式集合中为您的应用程序的 URL 提供激活码。
  • 您现在可以使用基本的 MVT 模型构建应用程序的 URL、表格、页面和其他组件,这些模型可能会立即包含在您的主程序中。
  • Django Apps 的主要特点是灵活性; 每个应用程序都作为一个独立的组件来协助设计研究。

如何在 Django 中使用 MVT 创建基本项目?

在您的计算机上打开终端并输入所需的命令以启动 Django 项目。

 startproject projectName django-admin

它将创建一个名为 projectName 的新文件夹。 在控制台使用回车操作符,输入项目

cd projectName

在项目文件夹中,urls.py、settings.py 和其他文件所在的位置,创建一个名为views.py 的新文件并将javascript命令保存在那里:

  • 打开工作目录 (projectName) 中的 views.py 文件并通过导入 hello emizen 函数添加您的条目​​。
  • 从 projectName.views 导入 hello emizen
  • 将 URL 模式中的一行添加到 URL 字段。
  • “emizen/”,“你好emizen,”

现在下一步是启动服务器

全栈 Django Web 开发人员的学习路径是什么?

可以有不同的学习路径,但帮助我的路径是这样的

1. 前端

前端很简单,是一个激发动力的好地方,因为你可以看到你的代码生成结果,这激起了你的好奇心。 从前端的基本 HTML 代码开始,使用教程了解 HTML 的各个方面。

2. 学习 CSS 和 Bootstrap

学习这将提高您的编码和用户界面构建技能,使您能够创建一个简单而有吸引力的网站。

3. 学习 Python

学习基础到中级 Python 编码。 我强烈建议你学习数据结构、算法和系统设计,因为大多数训练营和教程只关注创建项目和解释它们。 我们复制它们是为了感觉良好。 然而,当我们在学习了代码和语法之后尝试创建一些东西时,我们要么被卡住,要么不知道如何正确地解决任何程序。

4. 学习 Django 框架

最简单可爱的作品之一,它可以在几分钟内设置并开始运行。

你应该按什么顺序学习 HTML、CSS、JavaScript、Django 和 Python?

如果你是初学者,Python 是一个很好的开始学习的地方,这样你就可以掌握编程。

要创建令人惊叹的网页,首先要学习 HTML 和 CSS。

要使您的网站动态化并处理事件,请学习 javascript。 最后学习 Django 创建动态 Web 应用程序。 我建议在使用 Django 创建可扩展的 Web 应用程序之前学习 Web 架构和 MVC 范例。

Django 是全栈 Python 框架吗?

从理论上讲,当然可以,但这取决于您如何定义堆栈。

Django 是用 Python 开发的,可以处理所有复杂的任务,如远程授权、多数据库 ORM、Web 路由和 Python 中的其他事情。

它将它留给 Apache、WSGI 或您想要用来处理与端口 80 或 8080 的连接的任何其他服务器,这是它不处理的 HTTP 堆栈的唯一部分。

为了回复特定 URL 的 Web 请求,在 Django 堆栈的顶部执行任意 Python 代码。 您可以使用 Django 提供仅包含少量 Python 代码的静态内容。

为什么在 2022-2023 年仍然值得学习 Django?

当它提高安全性时,Django 是第一个浮现在脑海中的 Web 框架。 Django 具有出色的安全性。

  • 扩展 Django 非常容易。
  • Django 提供了各种库和预构建代码,使开发人员的任务更轻松,开发速度更快。
  • Python 是用于创建 Django 的编程语言,因其在自动化和人工智能中的应用而得到最好的认可。

是否有一个由其庞大的开发人员池创建的大型开发人员社区,如果新开发人员遇到问题并需要更多经验丰富的开发人员的帮助,这可能会很有用?

我希望您能看到 Django 在 2020 年仍然具有相关性,并且可以用来了解下一个技术发展。

为什么 Django 比 MEAN Stack 更好?

在询问之前不要问为什么。

我以 Python 编码员的身份提供我的回复。

它甚至不近,也不远。 包含 ORM、模板和其他功能的 MEAN 堆栈可以在大约两到三分钟内完成设置。 Django 很慢,所以如果你的网站开始出现一些流量,你就会遇到问题。

node.js 在质量、速度和易用性方面优于 Django 的事实并不意味着 Django 很糟糕。

人们曾经把它称为卑鄙,但我相信他们已经完全停止这样做了。 只有节点。 但是,如果您坚持使用,请将其称为 MEAN 堆栈。

你看,Django 不是异步的。 使用 Python 3.5,您可以执行异步操作,但 Django 在该领域并不擅长。

然而,Node 现在在各个方面都远胜于其他。 人们使用他们选择的任何数据库,并且有几个前端框架可用,包括 Angular、Angular2(4)、React、Vue 等等。 当我输入这个时,无疑又出现了两个。

结论

如果您想在几天内构建您的 Web 应用程序,那么没有比 Django Web 应用程序框架更好的方法了。 Django 将是一个快速的网站开发模板。 Django 提供所有功能作为其“包含电池的框架”绰号的一部分。 它具有集成的管理设计,使其使用变得简单。

我们从一些快速且易于构建的 Django 应用程序开始。 我们建议您在完成这些基本项目后花一些时间学习一些额外的概念,然后再进行高级项目。 获得信心后,您可以继续从事越来越复杂的项目。 它将帮助您掌握这些不同的项目,以提高您的 Django 能力。 创建 Django 项目是提高技能和展示专业知识的好方法。 我们相信上面的想法已经帮助您决定如何利用您对这个著名框架的知识来做。