---
title: "Model class reference"
version: 2.1
locale: en
source: https://docs.djangoproject.com/en/2.1/ref/models/class/
canonical: https://djangodocs.dev/en/2.1/ref/models/class/
---
# Model class reference

This document covers features of the [`Model`](/en/2.1/ref/models/instances/#django.db.models.Model) class.
For more information about models, see [the complete list of Model
reference guides](/en/2.1/ref/models/).

## Attributes

### `objects`

#### `Model.objects`

Each non-abstract [`Model`](/en/2.1/ref/models/instances/#django.db.models.Model) class must have a
[`Manager`](/en/2.1/topics/db/managers/#django.db.models.Manager) instance added to it.
Django ensures that in your model class you have  at least a
default `Manager` specified. If you don’t add your own `Manager`,
Django will add an attribute `objects` containing default
[`Manager`](/en/2.1/topics/db/managers/#django.db.models.Manager) instance. If you add your own
[`Manager`](/en/2.1/topics/db/managers/#django.db.models.Manager) instance attribute, the default one does
not appear. Consider the following example:

```
from django.db import models

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

For more details on model managers see [Managers](/en/2.1/topics/db/managers/)
and [Retrieving objects](/en/2.1/topics/db/queries/#retrieving-objects).
