Model クラスのリファレンスLink to this heading

このドキュメントでは Model クラスの機能を扱います。モデルについての詳細は モデルのリファレンスガイドの完全なリスト を参照してください。

属性Link to this heading

DoesNotExistLink to this heading

exception Model.DoesNotExistLink to this definition

この例外は、期待したオブジェクトが見つからない場合に ORM が発生させます。例えば QuerySet.get() で、指定されたルックアップに対応するオブジェクトが見つからない場合に発生します。

Django は各モデルクラスの属性として DoesNotExist 例外を提供し、見つからなかったオブジェクトのクラスを特定することで、特定のモデルクラスの例外をキャッチできるようにします。この例外は django.core.exceptions.ObjectDoesNotExist のサブクラスです。

MultipleObjectsReturnedLink to this heading

exception Model.MultipleObjectsReturnedLink to this definition

この例外は、QuerySet.get() によって、指定されたルックアップに対して複数のオブジェクトが見つかった場合に発生します。

Django は各モデルクラスの属性として MultipleObjectsReturned 例外を提供し、複数のオブジェクトが見つかったオブジェクトクラスを特定することで、特定のモデルクラスの例外をキャッチできるようにします。この例外は django.core.exceptions.MultipleObjectsReturned のサブクラスです。

objectsLink to this heading

Model.objectsLink to this definition

抽象クラスでない Model クラスには、 Manager インスタンスが追加されていなければなりません。Django はモデルクラスに少なくともデフォルトの Manager が指定されていることを保証します。独自の Manager を追加しない場合、Django はデフォルトの Manager インスタンスを含む objects 属性を追加します。独自の Manager インスタンス属性を追加すると、デフォルトのインスタンスは表示されなくなります。次の例を見てください:

Code
from django.db import models


class Person(models.Model):
    # Add manager with another name
    people = models.Manager()

モデルマネージャの詳細については マネージャオブジェクトの取得 を参照してください。