前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >完整的 Django 零基础教程|初学者指南 - 第 1 部分 转自:维托尔·弗雷塔斯

完整的 Django 零基础教程|初学者指南 - 第 1 部分 转自:维托尔·弗雷塔斯

作者头像
梦溪
发布2021-08-09 15:21:55
9940
发布2021-08-09 15:21:55
举报
文章被收录于专栏:梦溪博客梦溪博客

介绍

欢迎课

今天,我将开始一个关于 Django 基础知识的新教程系列。这是开始学习 Django 的完整初学者指南。材料分为七个部分。我们将详细探讨所有基本概念,从安装、开发环境的准备、模型、视图、模板、URL 到更高级的主题,如迁移、测试和部署。

我想做一些不同的事情。一个易于遵循、内容丰富且读起来有趣的教程。那时我想出了在文本中创作一些漫画来说明一些概念和场景的想法。我希望你喜欢阅读!

但在我们开始之前……

回到大学做代课教授的时候,我曾经在计算机科学课程中为新来的学生教授 Web 开发学科的介绍。我总是用孔子的话开始新的课程:

孔子名言

所以,动手吧!不要只阅读教程。我们一起做吧!通过实践和实践,你会学到更多。

为什么是Django?

Django 是一个用 Python 编写的 Web 框架。Web 框架是一种支持动态 Web 站点、应用程序和服务开发的软件。它提供了一组工具和功能,可以解决许多与 Web 开发相关的常见问题,例如安全特性、数据库访问、会话、模板处理、URL 路由、国际化、本地化等等。

使用 Web 框架,例如 Django,使我们能够以标准化的方式非常快速地开发安全可靠的 Web 应用程序,而无需重新发明轮子。

那么,Django 有什么特别之处呢?首先,它是一个 Python Web 框架,这意味着您可以从大量的开源库中受益。在Python包索引 库的主机超过116K 的包(按照2017年9月的6)。如果你需要解决一个特定的问题,很可能已经有人为它实现了一个库。

Django 是最流行的用 Python 编写的 Web 框架之一。它绝对是最完整的,提供了广泛的开箱即用功能,例如用于开发和测试的独立 Web 服务器、缓存、中间件系统、ORM、模板引擎、表单处理、与 Python 的单元测试工具的接口. Django 还附带电池 ,提供内置应用程序,例如身份验证系统、带有自动生成的 CRUD 操作页面的管理界面、联合提要 (RSS/Atom) 的生成、站点地图。甚至还有一个在 Django 中构建的地理信息系统 (GIS) 框架。

Django 的开发得到了Django 软件基金会的支持,并得到了 JetBrains 和 Instagram 等公司的赞助。Django 也已经存在了很长一段时间了。它已经积极开发超过 12 年,被证明是一个成熟、可靠和安全的 Web 框架。

谁在使用 Django?

很高兴知道谁在那里使用 Django,以便了解您可以用它做什么。在使用 Django 的最大网站中,我们有:Instagram、 DisqusMozilla、 BitbucketLast.fm、 国家地理

有关更多示例,您可以查看Django 站点数据库,它们提供了超过5000 个由 Django 驱动的网站的列表。

顺便说一下,去年在 Django Under The Hood 2016 会议上,Django 核心开发人员兼 Instagram 员工 Carl Meyer 就 如何大规模使用 Django以及它如何支持他们的增长进行了演讲。这是一个一小时的谈话,但如果你有兴趣了解更多,这是一个有趣的谈话。

安装

我们需要做的第一件事是在我们的机器上安装一些程序,以便能够开始使用 Django。基本设置包括安装PythonVirtualenvDjango

基本设置

使用虚拟环境不是强制性的,但强烈建议使用。如果你刚刚开始,最好从右脚开始。

使用Django 开发网站或Web 项目时,必须安装外部库来支持开发是很常见的。使用虚拟环境,您开发的每个项目都有其独立的环境。所以依赖不会发生冲突。它还允许您在本地机器上维护在不同 Django 版本上运行的项目。

使用起来非常简单,你会看到的!

安装 Python 3.6.2

我们要做的第一件事是安装最新的 Python 发行版,即Python 3.6.2 。至少在我编写本教程时是这样。如果有更新的版本,那就去吧。接下来的步骤应该或多或少保持不变。

我们将使用 Python 3,因为最重要的 Python 库已经被移植到 Python 3 并且下一个主要的 Django 版本 (2.x) 将不再支持 Python 2。所以 Python 3 是要走的路。

转到www.python.org单击 Python 3.6.2 下载页面,向下滚动直到看到下面列出的下载文件:

Python 3.6.2 Windows 安装程序下载

根据您的 Windows 发行版选择正确的版本。如果您不确定哪一个适合您,您很有可能想要下载Windows x86-64 可执行安装程序 版本。

转到您的下载目录,右键单击安装程序,然后单击以管理员身份运行

以管理员身份运行

确保选中Add Python 3.6 to PATH 选项,然后单击Install Now 选项。

现在安装

安装完成后,您应该看到以下屏幕:

安装成功

现在搜索命令提示符 程序并打开它:

命令提示符

要测试到目前为止一切是否正常,请键入以下命令:

代码语言:javascript
复制
python --version

作为输出,您应该看到:

代码语言:javascript
复制
Python 3.6.2

蟒蛇--版本

太好了,Python 已启动并正在运行。下一步:虚拟环境!

安装 Virtualenv

对于下一步,我们将使用pip (一种管理和安装 Python 包的工具)来安装virtualenv

在命令提示符中,执行以下命令:

代码语言:javascript
复制
pip install virtualenv

pip 安装 virtualenv

到目前为止,我们执行的安装是系统范围的。从现在开始,我们安装的所有东西,包括 Django 本身,都将安装在一个虚拟环境中。

可以这样想:对于您启动的每个 Django 项目,您将首先为其创建一个虚拟环境。这就像每个 Django 项目都有一个沙箱。所以你可以玩,安装包,卸载包而不会破坏任何东西。

我喜欢在我的个人电脑上创建一个名为Development 的文件夹。然后,我用它来组织我所有的项目和网站。但是您可以按照以下步骤在任何适合您的地方创建目录。

通常,我首先在我的Development 文件夹中创建一个带有项目名称的新文件夹。因为这将是我们的第一个项目,所以我们不需要选择一个花哨的名字或任何东西。现在,我们可以称它为myproject

代码语言:javascript
复制
mkdir myproject
cd myproject

创建我的项目文件夹

这个文件夹是更高级别的目录,它将存储与我们的 Django 项目相关的所有文件和东西,包括它的虚拟环境。

因此,让我们从创建我们的第一个虚拟环境并安装 Django 开始。

myproject 文件夹中:

代码语言:javascript
复制
virtualenv venv

虚拟环境

我们的虚拟环境已创建。现在在我们开始使用它之前,我们需要激活:

代码语言:javascript
复制
venv\Scripts\activate

如果您在命令行前面看到**(venv)** ,您就会知道它有效,如下所示:

虚拟环境激活

让我们试着了解这里发生了什么。我们创建了一个名为venv 的特殊文件夹。它在此文件夹中包含 Python 的副本。在我们激活venv 环境后,当我们运行 python命令时,它将使用我们的本地副本,存储在venv 中 ,而不是我们之前安装的另一个副本。

另一个重要的事情是,PIP 程序已装好,当我们用它来安装Python包,喜欢的Django,它将被安装里面VENV 环境。

顺便说一下,要停用venv,请 运行以下命令:

代码语言:javascript
复制
venv\Scripts\deactivate.bat

版权属于:Cyril

本文链接:https://cloud.tencent.com/developer/article/1858336

转载时须注明出处及本声明

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021 年 06 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
    • 为什么是Django?
    • 安装
    相关产品与服务
    消息队列 TDMQ
    消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档