模型类参考

本文档涵盖了 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 实例属性,则不会出现默认的。考虑下面的例子:

  1. from django.db import models
  2. class Person(models.Model):
  3. # Add manager with another name
  4. people = models.Manager()

关于模型管理器的更多细节,请参见 管理器检索对象