Model クラスのリファレンス

このドキュメントでは 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 はデフォルトの Manager インスタンスを含む objects 属性を追加します。独自の Manager インスタンス属性を追加すると、デフォルトのインスタンスは表示されなくなります。次の例を見てください:

from django.db import models


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

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

Back to Top