📜  Django 模型(1)

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

Django模型

Django模型是Django框架中的核心组件之一,它用于定义数据库中的数据模型。通过Django模型,程序员可以将数据库中的表映射为Python中的类,并通过类实例来创建、更新、删除和查询数据库中的数据。

定义模型

模型需要定义在Django应用的models.py文件中。下面是一个简单的模型定义的例子:

from django.db import models

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    email = models.EmailField()

在该例子中,我们定义了一个Person类,它继承自Django提供的models.Model类。Person类中有三个属性:first_name、last_name和email,它们分别对应数据库中的表格中的三个字段。其中,CharField和EmailField是Django提供的两种字段类型。

数据库迁移

在定义了模型后,需要通过Django的数据库迁移工具将模型映射到数据库中。Django提供了一个名为manage.py的命令行工具,用于执行各种管理操作。现在,我们需要使用manage.py命令行工具进行数据库迁移。具体的操作步骤如下:

  1. 在命令行工具中进入项目根目录下;

  2. 执行以下命令,创建一个迁移文件:

    python manage.py makemigrations
    
  3. 执行以下命令,将迁移文件应用到数据库中:

    python manage.py migrate
    
操作数据库

在将模型映射到数据库中后,我们就可以通过Python代码对数据库进行操作了。下面是一些常用的操作:

添加数据
person = Person(first_name='Jane', last_name='Doe', email='jane@example.com')
person.save()
更新数据
person = Person.objects.get(id=1)
person.first_name = 'John'
person.save()
删除数据
person = Person.objects.get(id=1)
person.delete()
查询数据
all_persons = Person.objects.all()
person = Person.objects.get(id=1)
persons_with_john = Person.objects.filter(first_name='John')