Loading repository data…
Loading repository data…
marcelo-mls / repository
Este repositório registra meu primeiro contato com Django & Django Rest Framework (DRF). Ele cria uma API bastante simples que simula um to-do list.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Primeiros passos com Django & Django Rest Framework
Registrar o meu primeiro contato com Django & Django Rest Framework (DRF). A intenção foi criar uma API simples, que simula um to-do list. A aplicação possui duas models (não vinculadas) uma para Usuários e outra para Tarefas. Para desenvolver as models foi utilizado o SQLite3 que já vem configurado por padrão com o framework.
Este README (que possui finalidade de aprendizado/tutorial) contém apenas uma descrição de tudo que foi feito (do zero) para desenvolver essa API.
git clone git@github.com:marcelo-mls/intro-to-django-drf.git && cd intro-to-django-drf
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python3 manage.py migrate
python3 manage.py runserver
1.1 - Criando o ambiente virtual
python3 -m venv .venv
1.2 - Ativando o ambiente virtual
source .venv/bin/activate
2.1 - Django
pip install django
2.2 - Django Rest Framework (DRF)
pip install djangorestframework
2.2.1 - Dependências do DRF
pip install markdown
pip install django-filter
requirements.txt3.1 - Criando o arquivo que registra as dependências do projeto
pip freeze > requirements.txt
4.1 - Iniciando projeto na pasta config
django-admin startproject config .
4.2 - Migrando as models que já vem pré-configuradas
python3 manage.py migrate
4.3 - Criando usuário para acessar rota /admin que já vem pré-configurada
python3 manage.py createsuperuser
4.4 - Iniciando a aplicação/modulo com o nome todo
django-admin startapp todo
5.1 - Inserindo modulos no arquivo de configurações. Em: config/settings.py
# /config/settings.py
# ...
# Application definition
INSTALLED_APPS = [
# ...
"todo",
"rest_framework",
]
# ...
Insira os valores acima na variável
INSTALLED_APPS. o valortodorefere-se ao modulo/aplicação que criamos. Já orest_frameworkindica o framework/pacote que vamos utilizar em conjunto com o Django
6.1 - Criando as models User e Task no modulo /todo/models.py
6.1.1 - Realizando as migrações das models
python3 manage.py makemigrations
python3 manage.py migrate
6.1.2 - Inserindo dados no banco
Esta etapa foi toda feita via terminal
python3 manage.py shell
from todo.models import Task
x = Task(title="Criar README.md")
x.save()
6.2 - Registrando as models criadas no modulo /todo/admin.py
6.3 - Criando e configurando um modulo serializador para converter os objetos python para json (e vice-versa). Desenvolvido em: /todo/serializer.py
6.4 - Configurando as views em /todo/views.py
6.5 - Criando e configurando as rotas em: /todo/urls.py
6.6 - Informando para o projeto principal as rotas que acabaram de ser criadas. Desenvolvido em: /config/urls.py
Developed by Marcelo Marques, © 2023.