返回

Django 进阶实战(二):构建数据库连接

后端

踏入 Django 数据库的魅力世界

Django 是一个功能强大的 Python Web 框架,因其简洁的语法、完善的功能和出色的扩展性而备受青睐。在 Django 开发过程中,数据库是必不可少的组件。本教程将带您探索 Django 中数据库连接的奥秘,让您轻松构建持久化数据存储。

初识 Django 数据库迁移

数据库迁移是将数据库模式从一种状态更改为另一种状态的过程。在 Django 中,您可以使用命令 makemigrationsmigrate 来执行数据库迁移。

首先,让我们使用 makemigrations 命令生成迁移脚本:

python manage.py makemigrations

这将创建一个迁移脚本文件,其中包含将数据库模式更改为所需状态所需的 SQL 语句。

接下来,使用 migrate 命令执行迁移:

python manage.py migrate

这将根据迁移脚本文件更新数据库模式。

模型:数据与现实的桥梁

模型是 Django 中用来表示数据库表的类。它定义了数据库表中的字段以及字段的类型和约束。

要创建模型,您需要在 models.py 文件中定义一个 Python 类。例如:

class Person(models.Model):
    name = models.CharField(max_length=30)
    age = models.IntegerField()

这个模型定义了一个名为 Person 的表,其中包含两个字段:nameagename 字段是一个字符串字段,最大长度为 30 个字符;age 字段是一个整数字段。

将模型映射到数据库

现在,您需要将模型映射到数据库。为此,您需要执行以下步骤:

  1. settings.py 文件中设置数据库连接信息。
  2. models.py 文件中将模型注册到 Django。

设置数据库连接信息

settings.py 文件中,找到 DATABASES 字典并设置数据库连接信息。例如:

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

在这个例子中,Django 将使用 SQLite3 作为数据库引擎,并使用 db.sqlite3 文件作为数据库文件。

将模型注册到 Django

models.py 文件中,将模型注册到 Django。为此,您需要在模型类的末尾添加 class Meta: 子类,并在其中指定模型的元信息。例如:

class Person(models.Model):
    name = models.CharField(max_length=30)
    age = models.IntegerField()

    class Meta:
        db_table = 'person'

在这个例子中,模型 Person 将映射到数据库中的表 person

结语

通过本教程,您已经掌握了如何在 Django 中连接数据库、创建模型并将其映射到数据库。这些知识将为您构建持久化数据存储奠定坚实的基础。在接下来的教程中,我们将继续探索 Django 的更多特性,帮助您打造更加强大的 Web 应用程序。