RESUMO EM ANDAMENTO
Criação de projeto backend API REST com Django REST Framework, utilizando ViewSets e Routers. Publicação (deploy) em cloud Amazon Web Services (AWS). Consumo da API REST com Postman. Pré-requisitos são conta gratuita no Postman e na AWS. Será utilizado serviço free tier AWS EC2 (gratuito). API REST conciste em CRUD de loft em Londres.
INSTALLED_APPS = [
# Outro conteúdo
"rest_framework",
"corsheaders",
"lofts",
]
MIDDLEWARE = [
# Outro conteúdo
"corsheaders.middleware.CorsMiddleware",
]
CORS_ALLOW_ALL_ORIGINS = True
REST_FRAMEWORK = {
"DEFAULT_RENDERER_CLASSES": [
"rest_framework.renderers.JSONRenderer",
],
"DEFAULT_PARSER_CLASSES": [
"rest_framework.parsers.JSONParser",
]
}
from django.db import models
class Loft(models.Model):
title = models.CharField(max_length=50)
description = models.CharField(max_length=255)
address = models.CharField(max_length=50)
price = models.DecimalField(max_digits=10, decimal_places=2)
def __str__(self):
return self.title
from rest_framework import serializers
from .models import Loft
class LoftSerializer(serializers.ModelSerializer):
class Meta:
model = Loft
fields = '__all__'
from rest_framework import viewsets
from .models import Loft
from .serializers import LoftSerializer
class LoftViewSet(viewsets.ModelViewSet):
queryset = Loft.objects.all()
serializer_class = LoftSerializer
from rest_framework.routers import DefaultRouter
from .views import LoftViewSet
router = DefaultRouter()
router.register(r'lofts', LoftViewSet, basename='loft')
urlpatterns = router.urls
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include('lofts.urls')),
]
Elaborado por Mateus Schwede
ubsocial.github.io