模型类参考
本文档涵盖了 Model 类的功能。关于模型的更多信息,请参见 模型参考指南的完整列表。
属性
DoesNotExist
exception Model.DoesNotExist
当没有找到预期的对象时,ORM 会引发这个异常。例如, QuerySet.get() 将在没有找到给定查找对象时引发该异常。
Django 提供了一个 DoesNotExist
的异常作为每个模型类的属性,用来标识找不到的对象类,允许你为某个模型类捕捉异常。该异常是 django.core.exceptions.ObjectDoesNotExist 的一个子类。
MultipleObjectsReturned
exception Model.MultipleObjectsReturned
当给定的查找找到多个对象时, QuerySet.get() 会引发这个异常。
Django 提供了一个 MultipleObjectsReturned
的异常作为每个模型类的属性,用于识别发现多个对象的对象类,允许你为某个模型类捕捉异常。该异常是 django.core.exceptions.MultipleObjectsReturned 的一个子类。
objects
Model.objects
每个非抽象的 Model 类必须有一个 Manager 实例添加到其中。Django 确保在你的模型类中至少指定了一个默认的 Manager
。如果你没有添加自己的 Manager`,Django 会添加一个属性 objects
,包含默认的 Manager 实例。如果添加自己的 Manager 实例属性,则不会出现默认的。考虑下面的例子:
from django.db import models
class Person(models.Model):
# Add manager with another name
people = models.Manager()