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