Django 数据库连接

2024 年 8 月 29 日 | 阅读 2 分钟

settings.py 文件包含所有项目设置以及数据库连接的详细信息。 默认情况下,Django 使用 SQLite 数据库,并允许配置其他数据库。

数据库连接需要所有连接详细信息,例如数据库名称、用户凭据、主机名驱动器名称等。

要连接 MySQL,使用 django.db.backends.mysql 驱动程序在应用程序和数据库之间建立连接。 让我们看一个例子。

我们需要在设置文件中提供所有连接详细信息。 我们项目的 settings.py 文件包含数据库的以下代码。

提供详细信息后,使用 migrate 命令检查连接。

此命令将为 admin、auth、contenttypes 和 sessions 创建表。 参见示例。

django database connectivity

现在,访问 MySQL 数据库并从数据库列表中查看数据库。 创建的数据库包含以下表。

django database connectivity 1

注意:如果数据库连接失败,它会抛出一个错误:django.db.utils.OperationalError: (1045, "用户 'root'@'localhost' (使用密码:YES) 的访问被拒绝")

迁移模型

好的,到这里,我们已经学会了将 Django 应用程序连接到 MySQL 数据库。 接下来,我们将看到如何使用模型创建表。

每个 Django 的模型都映射到数据库中的一个表。 因此,在创建模型后,我们需要对其进行迁移。 让我们看一个例子。

假设,我们在 models.py 文件中有一个 Employee 模型类,其中包含以下代码。

// models.py

Django 首先创建一个迁移文件,其中包含表结构的详细信息。 要创建迁移,请使用以下命令。

django database connectivity 2

创建的迁移文件位于 migrations 文件夹中,包含以下代码。

现在,迁移以将更改反映到数据库中。

django database connectivity 3

再次检查数据库,现在它包含 employee 表。

django database connectivity 4

看,数据库中存在一个表。 好的,我们已经成功地在我们的 Django 应用程序和 MySQL 数据库之间建立了连接。


下一主题数据库迁移