---
title: "Model クラスのリファレンス"
version: 6.0
locale: ja
source: https://docs.djangoproject.com/ja/6.0/ref/models/class/
canonical: https://djangodocs.dev/ja/6.0/ref/models/class/
---
# Model クラスのリファレンス

このドキュメントでは [`Model`](/ja/6.0/ref/models/instances/#django.db.models.Model) クラスの機能を扱います。モデルについての詳細は [モデルのリファレンスガイドの完全なリスト](/ja/6.0/ref/models/) を参照してください。

## 属性

### `DoesNotExist`

#### `exception Model.DoesNotExist`

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

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

### `MultipleObjectsReturned`

#### `exception Model.MultipleObjectsReturned`

この例外は、[`QuerySet.get()`](/ja/6.0/ref/models/querysets/#django.db.models.query.QuerySet.get) によって、指定されたルックアップに対して複数のオブジェクトが見つかった場合に発生します。

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

### `NotUpdated`

> **New in Django 6.0**

#### `exception Model.NotUpdated`

This exception is raised when [a forced update](/ja/6.0/ref/models/instances/#ref-models-force-insert) of a [`Model`](/ja/6.0/ref/models/instances/#django.db.models.Model) instance
does not affect any rows.

Django provides a `NotUpdated` exception as an attribute of each model
class to identify the class of object that could not be updated, allowing
you to catch exceptions for a particular model class. The exception is a
subclass of [`django.core.exceptions.ObjectNotUpdated`](/ja/6.0/ref/exceptions/#django.core.exceptions.ObjectNotUpdated) and inherits
from [`django.db.DatabaseError`](/ja/6.0/ref/exceptions/#django.db.DatabaseError) for backward compatibility reasons.

### `objects`

#### `Model.objects`

抽象クラスでない [`Model`](/ja/6.0/ref/models/instances/#django.db.models.Model) クラスには、 [`Manager`](/ja/6.0/topics/db/managers/#django.db.models.Manager) インスタンスが追加されていなければなりません。Django はモデルクラスに少なくともデフォルトの `Manager` が指定されていることを保証します。独自の `Manager` を追加しない場合、Django はデフォルトの [`Manager`](/ja/6.0/topics/db/managers/#django.db.models.Manager) インスタンスを含む `objects` 属性を追加します。独自の [`Manager`](/ja/6.0/topics/db/managers/#django.db.models.Manager) インスタンス属性を追加すると、デフォルトのインスタンスは表示されなくなります。次の例を見てください：

```
from django.db import models

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

モデルマネージャの詳細については [マネージャ](/ja/6.0/topics/db/managers/) と [オブジェクトの取得](/ja/6.0/topics/db/queries/#retrieving-objects) を参照してください。
