什么是姜戈?
Django 是一个基于 Python 的 Web 框架,它允许您快速创建 Web 应用程序,而不会遇到其他框架通常会遇到的所有安装或依赖问题。
在构建网站时,您始终需要一组类似的组件:处理用户身份验证(注册、登录、退出)的方法、网站管理面板、表单、上传文件的方法等. Django 为你提供了现成的组件来使用。
为什么是姜戈?
- 在 Django 框架中切换数据库非常容易。
- 它具有内置的管理界面,可以轻松使用它。
- Django 是功能齐全的框架,不需要其他任何东西。
- 它有数以千计的附加包可用。
- 它具有很强的可扩展性。
姜戈的流行
Django 被用于许多流行的网站,例如:Disqus、Instagram、Knight Foundation、MacArthur Foundation、Mozilla、国家地理等。 有超过 5000 个在线网站基于 Django 框架。 ( 来源 )
像 Hot Frameworks 这样的网站通过计算每个平台的 GitHub 项目和 StackOverflow 问题的数量来评估框架的受欢迎程度,这里 Django 排在第 6 位。基于对处理任何特定任务的正确方式的看法,Web 框架通常将自己称为“有意见的”或“无意见的”。 Django 有点自以为是,因此在两个世界中都提供了(自以为是和不自以为是)。
姜戈的特点
Django的多功能性
Django 几乎可以构建任何类型的网站。它还可以与任何客户端框架一起使用,并可以提供任何格式的内容,例如 HTML、JSON、XML 等。一些可以使用 Django 构建的站点是 wiki、社交网络、新站点等。
安全
由于 Django 框架旨在简化 Web 开发,因此它的设计方式使其能够自动执行正确的操作来保护网站。例如,在 Django 框架中,不是将密码放在 cookie 中,而是将经过哈希处理的密码存储在其中,以便黑客无法轻松获取。
可扩展性
Django 网络节点没有存储状态,它们水平扩展——当你需要它们时,只需启动更多。能够做到这一点是良好可扩展性的本质。 Instagram 和 Disqus 是两个基于 Django 的产品,拥有数百万的活跃用户,以 Django 的可扩展性为例。
可移植性
Django 框架的所有代码都是用Python编写的,它可以在很多平台上运行。这导致在 Linux、Windows 和 Mac OS 等许多平台上也可以运行 Django。
安装 Django
- 如果您的系统中未安装 python3(根据您的系统和操作系统的配置),请从此处安装。尝试下载最新版本的Python,这次是python3.6.4。
注意 –在 Linux 和 Mac 中安装 Django 是类似的,这里我在 Windows 中为 Linux 和 mac 展示它,只需打开终端代替命令提示符并执行以下命令。
- 安装 pip-打开命令提示符并输入以下命令-
python -m pip install -U pip
- 安装虚拟环境-在cmd中输入以下命令-
pip install virtualenv
- 设置虚拟环境 –设置虚拟环境将允许您编辑通常您的系统不允许的依赖项。
按照以下步骤设置虚拟环境-- 通过在 cmd- 中给出这个命令来创建一个虚拟环境
virtualenv env_site
- 通过此命令将目录更改为 env_site-
cd env_site
- 转到 env_site 内的 Script 目录并激活虚拟环境-
cd Script
activate
- 通过在 cmd- 中给出这个命令来创建一个虚拟环境
- 安装 Django-通过给出以下命令安装 django-
pip install django
- 返回 env_site 目录-
cd ..
- 通过以下命令启动项目 –
django-admin startproject geeks_site
- 将目录更改为 geeks_site
cd geeks_site
- 启动服务器 – 通过在 cmd 中键入以下命令启动服务器 –
python manage.py runserver
- 要检查服务器是否正在运行,请转到 Web 浏览器并输入http://127.0.0.1:8000/作为 url。
Django 架构的好处——
- 快速发展
- 松耦合
- 易于修改
MVC 架构的缺点 –
- 模型组件负载过多
- 开发复杂度高
- 两个组件控制视图