📜  创建或更新 django 模型 - Python (1)

📅  最后修改于: 2023-12-03 15:22:40.937000             🧑  作者: Mango

创建或更新 Django 模型 - Python

在 Django 中,模型是在数据库中建立的表与它们之间的关系描述。模型是 Django 数据访问框架的核心,它允许开发者创建应用程序并通过定义数据模型来处理数据。

在本文中,我们将介绍如何在 Django 中创建或更新模型。

创建模型

要在 Django 中创建一个模型,首先需要在 models.py 文件中定义它。使用 models.Model 类作为父类可以创建一个新的模型。然后,可以在模型中定义属性 (字段)。下面是一个简单的例子:

from django.db import models

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

在此示例中,我们定义了一个名为 Person 的模型。它有两个属性: nameagename 属性是一个文本字段,最大长度为 50 个字符。 age 属性是整数字段。

注意:在 Django 中,每个模型都会自动获得一个 ID 属性,这是一个整数字段,自动从 1 开始编号。

模型迁移

创建完模型之后,需要运行迁移来应用它们。Django 中的迁移是将模型的变化应用于数据库的过程。要生成迁移,我们可以在命令行中运行以下命令:

python manage.py makemigrations

这将生成一个新的迁移文件。然后我们可以运行以下命令应用这个迁移:

python manage.py migrate

这将根据模型定义自动创建相应的数据库表。

创建数据

一旦模型创建完成,我们可以使用它来向数据库中添加数据。创建模型的对象并将其保存到数据库中:

p = Person(name="张三", age=25)
p.save()
查询数据

要从数据库中检索数据,我们可以使用 objects 属性。该属性是模型管理器,它提供了与数据库进行交互的方法。

persons = Person.objects.all()

以上代码将返回所有 Person 对象的查询集合。我们可以将它们遍历并打印每个对象的属性:

for person in persons:
    print(person.name, person.age)
更新模型

要更新模型,我们可以在定义文件中添加更多属性。在最初的模型定义之后,可以添加新的属性。在 python manage.py makemigrations 命令中,Django 将检测到模型更改并创建新的数据迁移文件。运行迁移文件后,更新将应用于数据库。

如果要修改模型的现有属性,则必须先停止运行的服务,然后创建新的迁移并运行 python manage.py migrate 命令来将其应用于数据库。

总结

在 Django 中,我们可以使用 models.Model 类定义模型。属性定义为模型中的字段。要使用模型保存数据,我们可以创建对象并用 save() 方法将其保存到数据库。要查询数据,我们使用模型管理器的 objects 属性。要更新数据模型,我们向模型添加新属性并运行迁移。