Configurando um projeto Django Rest Framework (DRF)

Cansado de programar?

Conheça a melhor e mais completa formação de Python e Django e sinta-se um programador verdadeiramente competente. Além de Python e Django, você também vai aprender Banco de Dados, SQL, HTML, CSS, Javascript, Bootstrap e muito mais!

Quero aprender Python e Django de Verdade! Quero aprender!
Suporte

Tire suas dúvidas diretamente com o professor

Projetos práticos

Projetos práticos voltados para o mercado de trabalho

Prática profissional

Formação moderna com foco na prática profissional

Download do Artigo

✅ Artigo atualizado em Setembro 2026 Passo a passo conferido com Django 6.1.1 e DRF 3.18.1 (o DRF 3.18 suporta Django 5.2 LTS, 6.0 e 6.1). Corrigida a configuração de TokenAuthentication, que exige o app rest_framework.authtoken instalado.

Salve salve Pythonista!

Neste artigo, abordaremos a configuração de um projeto Django Rest Framework (DRF), incluindo a configuração do arquivo requirements.txt e do próprio Django Rest Framework.

Entender como configurar um projeto com DRF é essencial para quem deseja construir APIs robustas e escaláveis utilizando o Django, que é um dos frameworks mais populares para desenvolvimento web em Python.

Configurando o Django Rest Framework corretamente garantirá que seu projeto esteja pronto para adicionar, gerenciar e expor dados por meio de APIs RESTful.

Este artigo faz parte do Guia Completo de Django REST Framework. Lá você encontra o caminho inteiro para criar APIs profissionais: serializers, ViewSets, autenticação, filtros, paginação, testes e deploy.

Vá Direto ao Assunto…

Passo 1: Criando e configurando um novo projeto Django

Primeiro, precisamos instalar o Django e criar um novo projeto.

Certifique-se de ter o Python e o pip instalados em seu sistema.

Crie um novo ambiente virtual e instale as dependências.

Se ainda não sabe como criar ambientes virtuais para seus projetos Python, PRECISA ler esse artigo agora: Python e Virtualenv: como programar em Ambientes Virtuais

Com um ambiente virtual criado e ativado (o Django 6.1, versão estável atual, pede Python 3.12 ou superior; se você está no Python 3.10 ou 3.11, o pip instala o Django 5.2 LTS, que também funciona com o DRF atual):

1
2
3
4
pip install django
django-admin startproject meu_projeto
cd meu_projeto
python manage.py startapp minha_app

Isso irá instalar o Django, iniciar um novo projeto com startproject e criar um novo App Django chamado minha_app.

Está curtindo esse conteúdo? :thumbsup:

Que tal receber 30 dias de conteúdo direto na sua Caixa de Entrada?

Sua assinatura não pôde ser validada.
Você fez sua assinatura com sucesso.

Assine as PyDicas e receba 30 dias do melhor conteúdo Python na sua Caixa de Entrada: direto e sem enrolação!

Passo 2: Instalar o Django Rest Framework

Em seu recente criado ambiente virtual, instale o Django Rest Framework utilizando pip.

Adicione-o ao seu projeto Django configurando seu arquivo requirements.txt.

1
pip install djangorestframework

Crie um arquivo requirements.txt na raiz do seu projeto e adicione as dependências necessárias.

1
2
django
djangorestframework

Você pode instalar todas as dependências do requirements.txt com o comando:

1
pip install -r requirements.txt

:wrench: Projeto Django na prática: O Ebookr.ai é um projeto real construído com Django. Uma plataforma que gera ebooks profissionais com IA sobre qualquer tema, processamento assíncrono e exportação em PDF. Quer ver como ficou? Dá uma olhada!

Passo 3: Configurando o Django Rest Framework

Abra o arquivo settings.py do seu projeto Django e adicione 'rest_framework' à lista de aplicativos instalados:

1
2
3
4
5
6
INSTALLED_APPS = [
    ...
    'rest_framework',
    'rest_framework.authtoken',  # necessário para a TokenAuthentication (veja abaixo)
    'minha_app',
]

O app rest_framework.authtoken cria a tabela de tokens, então rode as migrations depois de adicioná-lo:

1
python manage.py migrate

Pronto, com isso você estará pronto para iniciar o desenvolvimento de APIs REST com Django REST Framework!

Configurar o DRF direito é o tipo de etapa que rende muito mais quando faz parte de um projeto Django guiado do início ao fim - como os da Jornada Python:

Configurações Essenciais do DRF

Permissões e Autenticação

1
2
3
4
5
6
7
8
9
10
11
REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.IsAuthenticatedOrReadOnly',
    ],
    'DEFAULT_AUTHENTICATION_CLASSES': [
        'rest_framework.authentication.SessionAuthentication',
        'rest_framework.authentication.TokenAuthentication',
    ],
    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
    'PAGE_SIZE': 10
}

:warning: A TokenAuthentication só funciona com 'rest_framework.authtoken' no INSTALLED_APPS (e o migrate executado). Sem isso, o manage.py check passa, mas qualquer requisição com o cabeçalho Authorization: Token ... quebra com erro 500 - nós reproduzimos isso no Django 6.1.1 com DRF 3.18.1.

CORS (Cross-Origin Resource Sharing)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# requirements.txt
django-cors-headers

# settings.py
INSTALLED_APPS = [
    ...,
    'corsheaders',
    'rest_framework',
]

MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',  # o mais alto possível, antes do CommonMiddleware
    ...
]

CORS_ALLOWED_ORIGINS = [
    "http://localhost:3000",
    "http://127.0.0.1:3000",
]

Fique ligado pois nos próximos artigos vamos falar sobre a configuração de rotas da sua API, como criar Viewsets para expôr dados, como criar Serializers para converter seus dados de objetos Python para representação JSON e vice-versa e muito mais!

Conclusão

Neste artigo, vimos como configurar um projeto Django Rest Framework.

Configuramos o arquivo requirements.txt, instalamos e configuramos o Django Rest Framework para criarmos APIs REST.

Com essas configurações, você está preparado para desenvolver APIs RESTful robustas utilizando Django e DRF!

Quer acelerar esse aprendizado com projetos guiados? Conheça o curso de Django da Jornada Python.

Fique ligado nos próximos artigos!

Até lá :wave:

Começe agora sua Jornada na Programação!

Não deixe para amanhã o sucesso que você pode começar a construir hoje!

#newsletter Olá :wave: Curtiu o artigo? Então faça parte da nossa Newsletter! Privacidade Não se preocupe, respeitamos sua privacidade. Você pode se descadastrar a qualquer momento.