第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列

作者 : IT 大叔 本文共4095个字,预计阅读时间需要11分钟 发布时间: 2020-09-17

Django Web 初级起飞教程系列:

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列

第2章:Django基础-Django 3 ... 2 ... 1 ... 起飞系列

第3章:主页-Django 3 ... 2 ... 1 ... Takeoff!系列

第4章:列表页面-Django 3 ... 2 ... 1 ... Takeoff系列

第5章:新列表页-Django 3 ... 2 ... 1 ...起飞!系列

第6章:导航栏 - Django 3 ... 2 ... 1 ...起飞!系列

第7章:详细清单页面-Django 3 ... 2 ... 1 ... 起飞!系列

第8章:我的列表页面-Django 3 ... 2 ... 1 ... 起飞系列

第9章:编辑列表页面-Django 3 ... 2 ... 1 ... 起飞系列

先决条件:

  • 任何计算机。
  • 源代码编辑器(本书使用的Visual Studio Code; Sublime Text是另一种选择)
  • Python 3
  • 数据库(本书使用PostgreSQL;但是,其他任何数据库都可以正常工作。事实上,Django已经使用SQLite3数据库,因此,如果要使用该数据库,则无需进行更改。)

PostgreSQL数据库安装

  • 下载并安装PostgreSQL数据库:https//www.postgresql.org/download/
  • 下载并安装PgAdmin4(在本书结尾处,我们将使用它):https ://www.pgadmin.org/download/
  • 打开PostgreSQL数据库,然后单击postgres数据库(红色箭头)。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图

  • 完成上一步后,将显示命令窗口,发出以下命令。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(2)

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(4)

Visual Studio和程序包安装

首先创建一个文件夹,您将在其中存储所有项目文件。我在计算机的“ 文档”文件夹中创建了文件夹。您可以在计算机上的任何位置创建它。

转到Visual Studio Code并通过单击File> Open打开在上一步中创建的文件夹。在该文件夹中,创建一个带有项目名称的文件夹。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(6)

进入Terminal> New Terminal打开终端窗口。一个新的终端将出现在VS代码的底部。通过查看命令行中的路径,确保您位于创建的第一个文件夹中('EXAMPLE')。选中此选项后,通过发出cd命令,进入项目的文件夹('project'),如下所示。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(8)

虚拟环境

虚拟环境(venv)可帮助我们维护相对独立的项目,以避免在计算机上全局安装Python软件包,这可能会导致文件和软件包冲突。

我们需要创建一个虚拟环境并激活它。为此,我们发出以下命令。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(10)

发出这些命令后,请检查您的文件夹树是否类似于下面的屏幕截图。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(12)

现在我们确信虚拟环境(venv)已成功创建,让我们开始安装项目所需的软件包。有多种安装软件包的方法,我们将使用pip install命令。

点子

Pip是Python的标准软件包管理系统。Pip从命令行界面处理软件包的安装。

让我们在终端窗口中发出以下命令。
第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(14)

Django的

Django是一个Python Web框架,用于快速安全地开发Web应用程序。Django是免费开放源代码。它允许快速制作原型,同时保持安全可靠的结构。这也有利于可伸缩性。

枕头

Pillow是一个Python库,允许我们操纵,上传和保存不同的图像文件格式。该库为任何网站添加了处理图像文件的基本图像处理功能。

Psycopg2和Psycopg2-binary

这些库可帮助我们连接到PostgreSQL数据库。Psycopg2-binary非常适合进行开发和测试,如果您不希望在本书结尾处将项目移至Heroku,则只能安装此库。我将把这个项目移到Heroku,所以我还将需要psycopg2库。

如果您使用的是SQLite3数据库,则无需安装这些软件包。

对Psycopg2安装进行故障排除

如果在发出pip install psycopg2之后出现类似以下的错误,请按照以下步骤进行故障排除。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(16)

发出pg_config命令并复制LDFLAGS路径(复制等号后的所有内容),然后将其粘贴在以下命令的引号之间,如下所示。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(18)

我已经缩短了我的LDFLAGS路径,因为它很长,并且每个人的路径都不同,但是请确保复制整个路径。另外,不要忘记在路径后添加pip install psycopg2。检查是否有多余的空间。有时,多余的空间可能会使整个安装混乱。

由于安装PostgreSQL的路径而引起了psycopg2的问题。我在Mac上遇到了这个问题,我不确定Windows是否也是如此。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(20)

列表应用

为了创建Django Web应用程序,我们需要实现一些功能。让我们从发出以下命令开始。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(22)

第一个命令创建一个文件夹,其中包含我们项目所需的主要Python文件。我选择了与我们创建的第一个文件夹相同的名称('example')。不要忘记命令末尾的点(。)。点(。)在我们当前的工作目录('project')中创建文件夹。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(24)

第二个命令创建一个应用程序,其中包含models.py和也需要的其他Python文件。您可以想到一些类似的应用程序,例如我们将它们组合成一个完整的机器(在本例中是一个网站)的小型活动部件。在这个项目中,我们将有两个应用程序;一个针对将在我们的网站上注册的用户,另一个针对这些用户发布的列表。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(26)

在运行项目之前,让我们开始修改一些设置。转到项目文件夹的settings.py并进行以下更改。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(28)

每次创建新应用或安装某些被视为应用的特定软件包时,都必须在settings.py中注册这些应用。一些示例是django-rest-framework,django-allauth等。

如果您已安装应用程序或软件包,并且不确定其是否属于已安装的应用程序部分,请查看该软件包的在线文档。

数据库设置
SQLite 3数据库设置

Django当前使用的默认数据库是SQLite3数据库。如果您打算使用此数据库,请不要编辑下面的代码。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(30)

PostgreSQL数据库设置
如果计划使用PostgreSQL,请进行以下更改。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(32)

发动机

指用于对数据库数据执行CRUD(创建,读取,更新,删除)操作的数据库组件。

名称

数据库名称。名称“ example”是指在“ PostgreSQL数据库安装”部分中创建数据库时为数据库提供的名称。如果为数据库指定了其他名称,请在此处替换。

用户

数据库的用户名。我尚未更改此项目的用户名。如您所见,用户名是“ postgres”。如果在创建数据库时更改了用户名,请在此处包括它。

密码

这是数据库密码。我创建的密码是“ password123”。包括您自己的密码(如果不同)。如果遇到问题,请参考PostgreSQL数据库安装部分。

主办

指Django在连接数据库时将使用的主机。由于我们使用的是本地计算机,因此我们放置了“ localhost”。如果这样不起作用,请尝试使用“ 127.0.0.1”。如果HOST字段保留为空,则默认情况下Django将使用localhost连接。

港口

指连接到数据库时要使用的端口。在我的情况下,端口为“ 5432”。如果PORT字段留空,则Django将使用默认端口进行连接。

静态和媒体文件设置

静态文件

这些文件可以是图像,徽标,JavaScript代码,CSS文件等。

一直向下滚动到settings.py的末尾。您将看到STATIC_URL已经存在。我们还需要添加以下代码。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(34)

STATIC_URL

Django将使用此路径并将其附加到您网站的基本URL。例如,(http://websitename/static/style.css)。它是开发期间对静态文件的引用。

STATICFILES_DIRS

指静态文件在我们项目中的位置。如果您有任何其他包含静态文件的目录,则可以列出不同的路径。它告诉Django查看项目中可能存在的额外静态文件的指定路径。

STATIC_ROOT

指的是Django在生产期间从中收集静态文件的绝对路径。不建议从您自己的本地项目中提供静态文件,这就是为什么我们在生产中需要包含此路径的原因。

媒体文件

这些是用户上传的文件。

MEDIA_URL

与STATIC_URL类似,但引用媒体文件。

MEDIA_ROOT

指向指向将保存用户上传的文件的目录的绝对路径。

FILE_UPLOAD_PERMISSIONS

有时,Python会引发有关用户在上传图片时可以执行的操作的错误。为了避免与文件权限不一致,请设置FILE_UPLOAD_PERMISSIONS = 0O640。

Linter设置(可选)

代码专家分析您的代码中是否存在潜在错误,例如语法,结构和最佳实践错误。如果您不被代码下的红线打扰,则可以跳过此设置。另一方面,代码学习器是学习编程语言时的有用工具。

尝试从项目目录中打开其他文件,例如urls.py。检查屏幕下部的问题。如果问题之一显示pylint(import-error),请按照以下步骤解决。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(36)

  • 转到查看>命令面板> Python:SelectLinter> pylint。(确保启用了启用选件选项,默认情况下,VS代码为Python代码启用pylint)。
  • 选择pylint后,.vscode文件夹将出现在VS代码的左侧。
  • 打开.vscode文件夹中的settings.json文件,并进行以下更改。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(38)

旧的settings.json(文件中的内容可能不同)。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(40)

新的settings.json。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(42)

  • 保存settings.json后,代码下的红线应消失。

Django简单网络应用

到目前为止,我们已经介绍了很多内容。它可能会让人不知所措,但是处理大量信息的最佳方法是逐步进行处理。
运行以下命令以查看第一个运行中的Django Web应用程序。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(44)

如果一切顺利,您应该会看到类似以下的消息。如果不是,请阅读终端中的错误并进行相应的故障排除。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(46)

转到http://127.0.0.1:8000,您应该看到以下内容。

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(48)

第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列插图(50)

项目与应用

一个项目由创建和运行网站所需的不同应用程序和Python文件组成。另一方面,应用程序是作为网站一部分的网络应用程序。应用程序在网站上执行功能或任务。例如,在我们的案例中,列表应用程序将处理网站上的帖子,而用户应用程序将注册新用户。

免责声明:
1. 本站资源转自互联网,源码资源分享仅供交流学习,下载后切勿用于商业用途,否则开发者追究责任与本站无关!
2. 本站使用「署名 4.0 国际」创作协议,可自由转载、引用,但需署名原版权作者且注明文章出处
3. 未登录无法下载,登录使用金币下载所有资源。
IT小站 » 第1章:Django Web应用程序设置-Django 3…2…1…起飞!系列

常见问题FAQ

没有金币/金币不足 怎么办?
本站已开通每日签到送金币,每日签到赠送五枚金币,金币可累积。
所有资源普通会员都能下载吗?
本站所有资源普通会员都可以下载,需要消耗金币下载的白金会员资源,通过每日签到,即可获取免费金币,金币可累积使用。

发表评论