---
title: "The Django admin documentation generator"
version: 3.2
locale: pt-br
source: https://docs.djangoproject.com/pt-br/3.2/ref/contrib/admin/admindocs/
canonical: https://djangodocs.dev/pt-br/3.2/ref/contrib/admin/admindocs/
---
# The Django admin documentation generator

Django’s [`admindocs`](#module-django.contrib.admindocs) app pulls documentation from the
docstrings of models, views, template tags, and template filters for any app in
[`INSTALLED_APPS`](/pt-br/3.2/ref/settings/#std-setting-INSTALLED_APPS) and makes that documentation available from the
[`Django admin`](/pt-br/3.2/ref/contrib/admin/#module-django.contrib.admin).

## Visão Geral

To activate the [`admindocs`](#module-django.contrib.admindocs), you will need to do
the following:

- Add [`django.contrib.admindocs`](#module-django.contrib.admindocs) to your [`INSTALLED_APPS`](/pt-br/3.2/ref/settings/#std-setting-INSTALLED_APPS).
- Add `path('admin/doc/', include('django.contrib.admindocs.urls'))` to
  your `urlpatterns`. Make sure it’s included *before* the
  `'admin/'` entry, so that requests to `/admin/doc/` don’t get
  handled by the latter entry.
- Install the docutils Python module (<https://docutils.sourceforge.io/>).
- **Optional:** Using the admindocs bookmarklets requires
  `django.contrib.admindocs.middleware.XViewMiddleware` to be installed.

Once those steps are complete, you can start browsing the documentation by
going to your admin interface and clicking the “Documentation” link in the
upper right of the page.

## Documentation helpers

The following special markup can be used in your docstrings to easily create
hyperlinks to other components:

| Django Component | reStructuredText roles |
| --- | --- |
| Models | `` :model:`app_label.ModelName` `` |
| Views | `` :view:`app_label.view_name` `` |
| Tags de template | `` :tag:`tagname` `` |
| Filtros do template | `` :filter:`filtername` `` |
| Templates | `` :template:`path/to/template.html` `` |

## Model reference

The **models** section of the `admindocs` page describes each model in the
system along with all the fields, properties, and methods available on it.
Relationships to other models appear as hyperlinks. Descriptions are pulled
from `help_text` attributes on fields or from docstrings on model methods.

A model with useful documentation might look like this:

```
class BlogEntry(models.Model):
    """
    Stores a single blog entry, related to :model:`blog.Blog` and
    :model:`auth.User`.
    """
    slug = models.SlugField(help_text="A short label, generally used in URLs.")
    author = models.ForeignKey(
        User,
        models.SET_NULL,
        blank=True, null=True,
    )
    blog = models.ForeignKey(Blog, models.CASCADE)
    ...

    def publish(self):
        """Makes the blog entry live on the site."""
        ...
```

## View reference

Each URL in your site has a separate entry in the `admindocs` page, and
clicking on a given URL will show you the corresponding view. Helpful things
you can document in your view function docstrings include:

- A short description of what the view does.
- The **context**, or a list of variables available in the view’s template.
- The name of the template or templates that are used for that view.

Por exemplo:

```
from django.shortcuts import render

from myapp.models import MyModel

def my_view(request, slug):
    """
    Display an individual :model:`myapp.MyModel`.

    **Context**

    ``mymodel``
        An instance of :model:`myapp.MyModel`.

    **Template:**

    :template:`myapp/my_template.html`
    """
    context = {'mymodel': MyModel.objects.get(slug=slug)}
    return render(request, 'myapp/my_template.html', context)
```

## Template tags and filters reference

The **tags** and **filters** `admindocs` sections describe all the tags and
filters that come with Django (in fact, the [built-in tag reference](/pt-br/3.2/ref/templates/builtins/#ref-templates-builtins-tags) and [built-in filter reference](/pt-br/3.2/ref/templates/builtins/#ref-templates-builtins-filters) documentation come directly from those
pages). Any tags or filters that you create or are added by a third-party app
will show up in these sections as well.

## Template reference

While `admindocs` does not include a place to document templates by
themselves, if you use the `` :template:`path/to/template.html` `` syntax in a
docstring the resulting page will verify the path of that template with
Django’s [template loaders](/pt-br/3.2/ref/templates/api/#template-loaders). This can be a handy way to
check if the specified template exists and to show where on the filesystem that
template is stored.

## Included Bookmarklets

One bookmarklet is available from the `admindocs` page:

**Documentação para esta página**

  Leva você de qualquer página para a documentação da view que gera tal página.

Using this bookmarklet requires that `XViewMiddleware` is installed and that
you are logged into the [`Django admin`](/pt-br/3.2/ref/contrib/admin/#module-django.contrib.admin) as a
[`User`](/pt-br/3.2/ref/contrib/auth/#django.contrib.auth.models.User) with
[`is_staff`](/pt-br/3.2/ref/contrib/auth/#django.contrib.auth.models.User.is_staff) set to `True`.
