Django 对接 PostgreSQL,Web 框架领域的新王炸组合!

数据库 PostgreSQL
PostgreSQL 具有许多 Django 支持的其他数据库不具备的功能,这使得它成为生产中 Django 应用程序的理想选择。

Django 简介

Django 处于“开箱即用”状态时,默认设置为与 SQLite 交互 - SQLite 是 Python 发行版中包含的轻量级关系数据库。因此,默认情况下,Django 会自动为您的项目创建一个 SQLite 数据库。

除了 SQLite,Django 还支持其他流行的数据库,包括 PostgreSQL、MySQL 和 Oracle。

但是,PostgreSQL 具有许多 Django 支持的其他数据库不具备的功能,这使得它成为生产中 Django 应用程序的理想选择。

在虚拟环境中安装 Django

首先,请确保已安装了 Python 3。

现在,我们必须设置一个虚拟环境。这非常重要,因为您正在构建一个巨大的应用程序,并且您不希望各种组件的各种版本相互冲突。

在命令提示符中输入以下内容,以安装 virtualenv:

pip install virtualenv

使用 pip,可以通过简单的一行指令,从命令行轻松安装 Django。

进入该目录后,通过执行以下命令,创建虚拟环境:

python3 -m venv myenv

您可以为该环境指定任何您想要的名称。现在执行以下命令,来激活环境:

source myenv/bin/activate

这必须在我们在虚拟环境中安装任何应用程序之前完成。

如果虚拟环境已激活,您将在命令提示符中看到 (myenv)。要退出虚拟环境,只需键入 “deactivate”。

在虚拟环境处于活动状态的情况下,安装 Django。

pip install Django

我们还需要安装 psycopg2。psycopg2 是一个软件包,它允许 Django 使用 PostgreSQL 数据库。同样,要安装,请执行命令:

pip install psycopg2

创建新的 Django 项目

安装 Python 组件后,您现在可以创建实际的 Django 项目文件。

只要你已经有了一个项目目录,你就可以让 Django 在这里安装文件。它将使用实际代码创建一个二级目录,这是正常的,并在此目录中放置一个管理脚本。关键是你要明确指定目录,而不是让 Django 以相对于我们当前的目录创建项目:

django-admin startproject myproj ~/myprojdir

此时,您的项目目录(在此示例中为~/myprojdir)应包含以下内容:

• ~/myprojdir/manage.py:一个 Django 项目管理脚本。

• ~/myprojdir/myproj/:Django 项目包。这里应该会包含__init__.py、settings.py、urls.py、asgi.py和wsgi.py文件。

• ~/myprojdir/myenv/:您在前面创建的虚拟环境目录。

配置 Django 数据库设置

打开项目中的settings.py文件,并直接滚动到数据库部分,该部分应如下所示。

DATABASES = { 
   'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }}

我们需要更改这些设置,以将我们的 PostgreSQL 集成到项目。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'mydb',
        'USER': 'myuser',
        'PASSWORD': 'mypass',
        'HOST': 'localhost',
        'PORT': '5432',
    }}

让我们快速了解下这些设置:

DATABASES - 这个常量是一个数据库连接信息的字典,它是 Django 必需的。您可以有多个连接到不同数据库的设置,但大多数时候,您只需要一个名为 default 的条目。

default - 这是默认的数据库连接配置。您应该始终拥有一组默认的连接设置。

'ENGINE': 'django.db.backends.postgresql_psycopg2' - 这用于告诉 Django 使用 Postgres 后端。它会使用psycopg2驱动,这是我们前面安装的 Python 的 Postgres 库。

'NAME': 'mydb' - 要连接到的数据库的名称。

'USER': 'myuser' - 有权访问数据库的用户。

'PASSWORD': 'mypass' - 数据库用户的密码。

'HOST': 'localhost' - 要连接到的数据库服务器的地址。

'PORT': '5432' - 您要连接的端口,默认为 “5432”。

测试您的项目

此外,您现在可以创建一个超级用户,以登录到管理员操作面板。

python3 manage.py createsuperuser

系统将提示您提供登录凭据。

现在一切都已设置好了,通过运行 Django 开发服务器,来测试您的数据库是否正在运行。

python3 manage.py runserver 0.0.0.0:8000

在您的 Web 浏览器中,访问您服务器的域名或 IP 地址,后面跟上:8000:

http://server_domain_or_IP:8000

你应该会进入到默认的 Django 主页:

图片图片

如果在地址栏将/admin附加到 URL 的末尾,系统将提示您输入使用createsuperuser命令创建的管理用户名和密码:

图片图片

身份验证后,您可以访问默认的 Django 管理界面:

图片图片

完成探索后,可在终端窗口中按 CTRL-C 以关闭开发服务器。

责任编辑:武晓燕 来源: 红石PG
相关推荐

2022-09-29 13:52:55

WindowsPython代码

2024-08-28 09:12:12

PostgreSQLJava微服务

2024-03-29 08:56:47

2019-11-20 18:44:51

华为MatePad

2023-05-06 08:23:36

ChatGPT自然语言技术

2022-09-15 11:56:36

Javalua开发

2024-05-28 08:25:09

2018-10-24 16:25:57

2014-12-15 15:07:36

Esri

2017-09-11 10:55:22

PythonWeb框架

2018-12-03 08:25:24

2011-12-29 10:38:19

移动Web

2022-10-20 23:15:10

PostgreSQL算法机制

2021-12-06 09:00:00

开发WebDjango

2023-10-09 18:17:52

Python语言Web

2024-04-15 12:28:00

AI模型

2024-11-22 13:40:00

2024-04-15 12:54:39

2021-08-26 08:00:00

Django开发框架

2011-06-29 09:16:40

Python
点赞
收藏

51CTO技术栈公众号