如何安装 Django¶
本文档将指导您开始使用 Django。
安装 Python¶
Django 是一个 Python Web 框架。详情请参阅 我可以使用哪个 Python 版本与 Django 配合使用?。
您可以在 https://pythonlang.cn/downloads/ 获取最新版本的 Python,或者使用您操作系统的包管理器。
Windows 上的 Python
如果您刚开始使用 Django 并使用 Windows,您可能会发现 如何在 Windows 上安装 Django 很有用。
安装 Apache 和 mod_wsgi
¶
如果您只想试用 Django,请跳到下一节;Django 包含一个轻量级 Web 服务器,可用于测试,因此在准备好将 Django 部署到生产环境之前,您无需设置 Apache。
如果您想在生产站点上使用 Django,请使用带有 mod_wsgi 的 Apache。mod_wsgi 以两种模式之一运行:嵌入模式或守护进程模式。在嵌入模式下,mod_wsgi 类似于 mod_perl – 它将 Python 嵌入到 Apache 中,并在服务器启动时将 Python 代码加载到内存中。代码在 Apache 进程的整个生命周期中都驻留在内存中,这导致性能比其他服务器配置有了显著提高。在守护进程模式下,mod_wsgi 会生成一个独立的守护进程来处理请求。守护进程可以以与 Web 服务器不同的用户身份运行,这可能会提高安全性。守护进程可以在不重启整个 Apache Web 服务器的情况下重启,这可能会使刷新代码库更加无缝。请查阅 mod_wsgi 文档以确定哪种模式适合您的设置。确保已安装 Apache 并激活了 mod_wsgi 模块。Django 可以与任何支持 mod_wsgi 的 Apache 版本一起使用。
有关安装 mod_wsgi 后如何配置它的信息,请参阅 如何将 Django 与 mod_wsgi 配合使用。
如果您由于某种原因无法使用 mod_wsgi,请不要担心:Django 支持许多其他部署选项。其中一个是 uWSGI;它与 nginx 配合得非常好。此外,Django 遵循 WSGI 规范(PEP 3333),这允许它在各种服务器平台上运行。
启动您的数据库¶
如果您计划使用 Django 的数据库 API 功能,则需要确保数据库服务器正在运行。Django 支持许多不同的数据库服务器,并官方支持 PostgreSQL、MariaDB、MySQL、Oracle 和 SQLite。
如果您正在开发一个小型项目或您不打算在生产环境中部署的项目,SQLite 通常是最佳选择,因为它不需要运行单独的服务器。但是,SQLite 与其他数据库有很多不同之处,因此如果您正在处理一些重要的内容,建议您使用计划在生产中使用的相同数据库进行开发。
除了官方支持的数据库之外,还有 第三方提供的后端 允许您将其他数据库与 Django 配合使用。
要使用 SQLite 之外的其他数据库,您需要确保安装了相应的 Python 数据库绑定。
如果您使用的是 PostgreSQL,则需要 psycopg 或 psycopg2 包。有关更多详细信息,请参阅 PostgreSQL 说明。
如果您使用的是 MySQL 或 MariaDB,则需要一个 DB API 驱动程序,例如
mysqlclient
。有关详细信息,请参阅 MySQL 后端的说明。如果您使用的是 SQLite,您可能需要阅读 SQLite 后端说明。
如果您使用的是 Oracle,则需要安装 oracledb,但请阅读 Oracle 后端的说明,了解有关 Oracle 和
oracledb
支持版本的详细信息。如果您使用的是非官方的第三方后端,请参考提供的文档了解任何其他要求。
并确保 DATABASES
字典的 'default'
条目中的以下键与您的数据库连接设置匹配
ENGINE
–'django.db.backends.sqlite3'
、'django.db.backends.postgresql'
、'django.db.backends.mysql'
或'django.db.backends.oracle'
之一。其他后端 也可用。NAME
– 数据库的名称。如果您使用的是 SQLite,则数据库将是您计算机上的一个文件。在这种情况下,NAME
应为完整绝对路径,包括该文件的名称。您无需事先创建任何内容;数据库文件将在需要时自动创建。默认值BASE_DIR / 'db.sqlite3'
将在您的项目目录中存储该文件。
对于 SQLite 以外的数据库
如果您没有使用 SQLite 作为数据库,则必须添加其他设置,例如 USER
、PASSWORD
和 HOST
。有关更多详细信息,请参阅 DATABASES
的参考文档。
此外,请确保您此时已创建了数据库。使用数据库的交互式提示符中的“CREATE DATABASE database_name;
”来创建数据库。
如果您计划使用 Django 的 manage.py migrate
命令自动为您的模型创建数据库表(在首次安装 Django 并创建项目后),您需要确保 Django 具有在您使用的数据库中创建和更改表的权限;如果您计划手动创建表,您可以授予 Django SELECT
、INSERT
、UPDATE
和 DELETE
权限。创建具有这些权限的数据库用户后,您将在项目的设置文件中指定详细信息,有关详细信息,请参阅 DATABASES
。
如果您使用 Django 的 测试框架 来测试数据库查询,Django 将需要创建测试数据库的权限。
安装 Django 代码¶
安装说明略有不同,具体取决于您是安装特定于发行版的包,下载最新的官方版本,还是获取最新的开发版本。
使用 pip
安装官方版本¶
这是安装 Django 的推荐方法。
安装 pip。最简单的方法是使用 独立 pip 安装程序。如果您的发行版已安装
pip
,则可能需要更新它(如果它已过期)。如果它已过期,您会知道,因为安装将无法正常工作。请查看 venv。此工具提供隔离的 Python 环境,比在系统范围内安装包更实用。它还允许在没有管理员权限的情况下安装包。贡献教程 演示了如何创建虚拟环境。
创建并激活虚拟环境后,输入以下命令:
$ python -m pip install Django
...\> py -m pip install Django
安装特定于发行版的包¶
检查 特定于发行版的说明 以查看您的平台/发行版是否提供官方 Django 包/安装程序。发行版提供的包通常允许自动安装依赖项和支持的升级路径;但是,这些包很少包含 Django 的最新版本。
安装开发版本¶
跟踪 Django 开发
如果您决定使用 Django 的最新开发版本,您需要密切关注开发时间线,并关注即将发布版本的发布说明。这将帮助您掌握您可能想要使用的任何新功能,以及更新 Django 版本时需要对代码进行的任何更改。(对于稳定版本,任何必要的更改都记录在发布说明中。)
如果您希望能够定期使用最新的错误修复和改进更新您的 Django 代码,请按照以下说明操作
确保您已安装Git,并且您可以从 shell 运行其命令。(在 shell 提示符下输入
git help
来测试这一点。)检出 Django 的主开发分支,如下所示
$ git clone https://github.com/django/django.git
...\> git clone https://github.com/django/django.git
这将在您的当前目录中创建一个名为
django
的目录。确保 Python 解释器可以加载 Django 的代码。最方便的方法是使用虚拟环境和pip。贡献教程 演示了如何创建虚拟环境。
设置并激活虚拟环境后,运行以下命令
$ python -m pip install -e django/
...\> py -m pip install -e django\
这将使 Django 的代码可导入,并将使
django-admin
实用程序命令可用。换句话说,您已全部设置完毕!
当您想更新您的 Django 源代码副本时,在django
目录中运行命令git pull
。执行此操作时,Git 将下载所有更改。