From 5d579ecb5acd9ec7e3854dbe3d1469ad9a345676 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Alexandre=20Viana=20Marques?=
<74380592+jalexandrevm@users.noreply.github.com>
Date: Wed, 9 Mar 2022 11:25:20 -0300
Subject: [PATCH 1/3] =?UTF-8?q?Inclu=C3=ADdo=20README.md?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Adicionado resumo em README.md do módulo 12
---
mod-12/README.md | 386 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 386 insertions(+)
create mode 100644 mod-12/README.md
diff --git a/mod-12/README.md b/mod-12/README.md
new file mode 100644
index 0000000..347ee29
--- /dev/null
+++ b/mod-12/README.md
@@ -0,0 +1,386 @@
+# Módulo 12
+
+## Índice
+
+ 1. [Introdução ao Flask](#objetos-imutáveis)
+ 2. [Variáveis do Ambiente Flask](#objetos-mutáveis)
+ 3. [Listando Eventos](#definindo-classes)
+ 4. [Detalhar Evento](#herança)
+ 5. [Lidando com erros no Flask](#exercícios)
+ 6. [Criar Novo Evento](#exercícios)
+ 7. [Deletar Evento](#exercícios)
+ 8. [Editar Evento (PUT)](#exercícios)
+ 9. [Editar Evento Parcial (PATCH)](#exercícios)
+
+## Criando Projeto Django
+
+Como no flask, vamos criar um ambiente virtual para usar neste projeto do Django. Assim, dentro da pasta do projeto usamos:
+
+```python
+python -m venv venv
+```
+
+> Nota: se antes de criar o `venv` você abrir o VS Code na pasta do projeto, a `venv` criada vai ser automaticamente reconhecida e indicada pelo VS Code a ser utilizada como interpretador padrão para o projeto
+
+Criado a *venv*, precisamos agora instalar dentro dela o Django com o comando abaixo:
+
+> Nota:
+> - de dentro do VS Code, ao abrir o terminal Git Bash, a `venv` já estará ativa
+> - de fora, ativamos a `venv` de 2 maneiras:
+> > 1.se na `venv` tiver a pasta `bin`, ativamos com `source venv/bin/activate`
+> >
+> > 2.caso haja `Scripts`, usar `source venv/Scripts/activate`
+
+```python
+django-admin startproject nome_pjt .
+```
+
+Após o comando acima, será criado uma pasta com o *nome_pjt* passado e outro arquivo `manage.py` com algumas funcionalidades do Django
+
+Agora já podemos rodar um servidor com o seguinte comando:
+
+```python
+python manage.py runserver
+```
+
+No linux, Ubuntu numa VM VirtualBox, o python está na versão 3.8 e
+precisou instalar o `sudo apt install python3.8-venv` para conseguir criar o `venv` no projeto
+
+No python 3.8 ainda existe a pasta bin com o activate dentro e
+ativei com `source venv/bin/activate`
+
+Em seguida, instalei o django com `pip install django` e já instalou a mais atual 4.0.3
+
+Para criar o projeto django usei
+`django-admin startproject nome_pjt lcl_server`, criando assim:
+
+```python
+django-admin startproject torneios .
+```
+
+O django criou uma pasta com o nome "torneios" e deixou nosso servidor `manage.py` em `.` onde foi executado o comando
+
+## Criando nosso app
+
+Com o Django, nossas funcionalidades serão modularizadas com o uso de apps e cada app representará uma funcionalidade completa, como se o app ficasse responsável por uma parte completamente funcional do projeto
+
+Com isso, no nosso servidor que receberá as requisições, vamos direcionar os pedidos de uma parte do projeto para nosso app em criação
+
+```python
+# criando nosso app
+django-admin startapp agenda
+```
+
+Assim como no Flask, no Django também referenciamos uma url de requisição para uma função, ou view
+
+Porém, no Django, incluímos esses caminhos em um arquivo diferente do qual executamos o servidor
+
+Como vimos, nosso servidor encontra-se no `manage.py` e o direcionamento, ou roteamento, das urls fica dentro da pasta principal do projeto em `urls.py`
+
+Dentro de `urls.py` vamos incluir um caminho com `path(caminho, view)`
+na lista de `urlpatterns` indicando pro servidor quem responderá ao pedido
+
+```python
+# arquivo urls.py na pasta principal
+# primeiro importamos a função
+from agenda.views import index
+urlpatterns = [
+ path('admin/', admin.site.urls),
+ # depois incluímos o caminho
+ path("agenda", index),
+]
+
+# views.py dentro de agenda
+# abaixo de "Create your views"
+def index(request):
+ return HttpResponse("Olá mundo")
+```
+
+Assim, quando acessamos nosso domínio no caminho `agenda` o servidor encaminhará para a função `index` dentro da *`views.py`* da nossa app agenda
+
+Como boa prática, podemos também incluir um arquivo `urls.py` da pasta agenda inteiro no `path` para direcionar todos os pedidos ao caminho `agenda` ao app agenda
+
+Assim, sempre que uma requisição com o caminho iniciado por `agenda` chegar ao servidor, encaminhamos ao nosso app agenda a responsabilidade de respondê-la
+
+Logo, no arquivo `urls.py` do projeto, incluiremos:
+
+```python
+# urls.py do projeto
+# com o *as* damos um apelido diferente
+# ao padrão de urls da agenda
+from agenda.urls import urlpatterns as agenda_urls
+urlpatterns = [
+ path("agenda", include(agenda_urls))
+]
+```
+
+Desta forma, informamos ao nosso servidor que quando o caminho tiver *agenda* nele, o app agenda vai tratar os pedidos de requisição e o arquivo `urls.py` de agenda passa a rotear as requisições
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Criando Models e Exibir Torneio
+
+Quando criamos nosso app com o Django o arquivo `models.py` vai nos ajudar a declarar nossas entidades
+
+Neste arquivo teremos as classes com as quais iremos trabalhar no projeto declarando seus atributos e métodos aqui
+
+```python
+# no model.py do app
+class Inscrito:
+ id = 0
+ def __init__(self, nome, local) -> None:
+ Inscrito.id += 1
+ self.id = Inscrito.id
+ self.nome = nome
+ self.local = local
+ self.inscricoes = []
+class Competicao:
+ id = 0
+ def __init__(self, nome, data):
+ Competicao.id += 1
+ self.id = Competicao.id
+ self.qtd_inscritos = 0
+ self.nome = nome
+ self.data = data
+ self.inscritos = []
+# código para teste vem aqui também
+# neste caso criei 2 torneios
+disp1 = Competicao("xadrez","05/03/2022")
+disp2 = Competicao("matematica","04/03/2022")
+# depois incluí ambos numa lista
+disputas = []
+disputas.append(disp1)
+disputas.append(disp2)
+```
+
+Agora vamos mostrar uma tabela listando as competições criadas
+
+Primeiro incluiremos na `urls.py` da agenda um caminho que responderá pela requisição, então:
+
+```python
+# urls.py da agenda
+from django.urls import path
+from agenda.views import agenda_mostra_disputas
+
+urlpatterns = [
+ path("/disputas", agenda_mostra_disputas),
+]
+```
+
+Agora, criamos a função em `views.py` do app agenda para responder os pedidos
+
+```python
+def agenda_mostra_disputas(request):
+ return render(
+ request=request,
+ context={"table_linhas": disputas},
+ template_name="agenda/exibe_disputa.html",
+ )
+```
+
+No próximo capítulo explico melhor a linha com `template_name="agenda/exibe_disputa.html",` passado para o render
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Utilizando Django Template
+
+Agora com os *templates* vamos conseguir separar códigos html do nosso código python
+
+Assim vamos criar uma pasta *templates/nome_app* dentro de nosso app para dentro dela criar nossos arquivos com código html personalizado que será atualizado dinamicamente quando executarmos o programa
+
+Então, dentro da nossa pasta `templates/agenda` vamos criar um arquivo `exibe_disputas.html` para colocar dentro dele todo o html que vamos precisar
+
+> ```html
+>
+>
+>
Disputa: {{disputa.id}}
+> Id: {{disputa.id}}
+> Nome: {{disputa.nome}}
+> Data: {{disputa.data}}
+>
+> ```
+
+> Nota1:
+> > no VS Code é possível selecionar o modo de linguagem para o Django HTML para formatar o arquivo html direitinho
+>
+> Nota2:
+> > no arquivo template também é possível inserir alguns códigos nele como um `if` ou `for` para gerar as linhas de uma tabela ou filtrar algo que não queremos que seja mostrado, no arquivo fica assim:
+> ```html
+> {% for item in table_linhas %}
+>
+> | {{ item.id }} |
+> {{ item.nome }} |
+> {{% if %}{{ item.data }} | {% endif %}
+>
+> {% endfor %}
+> ```
+
+Para importar nosso arquivo template precisamos chamar na view o *loader* do Django da seguinte maneira:
+
+```python
+# dentro de nossa view importamos
+from django.template import loader
+# criamos referência ao template
+template = loader.get_template("agenda/exibe_disputa.html")
+```
+
+Depois de todo esse processo ainda precisamos informar ao Django que nosso app existe e qual o seu nome
+
+No arquivo `settings.py` localizado na pasta do projeto principal temos que incluir um item na lista `INSTALLED_APPS` com a linha a seguir:
+
+> ```python
+> INSTALLED_APPS = [
+> ... # código existente
+> 'agenda.apps.AgendaConfig',
+> ]
+> ```
+
+Por fim, após a requisição ser roteada pelo urls do app e direcionada a função da nossa view, esta retornará com o uso de um `render` a página construída com o código estático e dinâmico interpolado num só da seguinte maneira
+
+> ```python
+> return render(
+> request=request,
+> context={"table_linhas": disputas},
+> template_name="agenda/exibe_disputa.html",
+> )
+> ```
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Trabalhando com Bancos de Dados
+
+Neste capítulo vamos apresentar muito por alto a ideia de um banco de dados relacional no qual gravaremos de forma mais persistente, nossas entidades e suas relações entre todas elas
+
+Imaginem o seguinte baseado no exemplo já comentado, no qual vamos controlar competições e as pessoas cadastradas e inscritas em cada uma
+
+Num banco de dados, salvaremos nossos objetos em tabelas que representam a classe deles e em alguns casos também teremos tabelas para representar as relações entre as entidades
+
+Nos nossos exemplos usaremos o Django ORM para fazer a persistência dos nossos objetos
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Django ORM e migrações
+
+Agora vamos ver alguns exemplos do uso do Django ORM com o SQLite porém, futuramente migraremos para o Postgres
+
+O ORM em Django ORM significa Object Relational Mapping, ou um mapeamento de objetos relacionais e faz com que as entidades com seus atributos e seus relacionamentos sejam gravados em tabelas no banco de dados
+
+Primeiramente precisamos ir em nosso arquivo `models.py` dentro do nosso app e fazer com que o django saiba que uma classe dali será persistida no banco como uma tabela da seguinte forma:
+
+```python
+# dentro de models.py do app
+# declaramos a classe assim
+class Categoria(models.Model):
+ nome = models.CharField(max_length=60, unique=True)
+```
+
+No código acima precisamos que a classe herde de `models.Model` para que o Django saiba que aquela classe será gravada no banco de dados e na linha `nome = models.CharField(max_length=60, unique=True)` dizemos que o atributo *nome* será na tabela do tipo *CharField* de tamanho 60 e que o valor será único não podendo ter outro registro igual na tabela
+
+Agora precisamos enviar essas alterações para o arquivo de banco de dados executando no terminal o seguinte
+
+```python
+python manage.py makemigrations
+```
+
+Dentro da pasta `migrations` do nosso app será criado um arquivo sequencial que terá comandos a serem executados para atualizar nosso banco conforme as alterações feitas no projeto
+
+Após a geração deste arquivo podemos efetivar essas alterações no banco com o comando a seguir:
+
+```python
+python manage.py migrate
+```
+
+Para verificar se tudo funcionou temos o comando `python manage.py dbshell` que inicia o shell do SQLite e nele podemos digitar `.tables` para ver as tabelas criadas no banco
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Fazendo consultas pelo Shell
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Django Admin
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Listagem de Eventos
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Adicionando Data aos Eventos
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Buscando e Exibindo Evento
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Navegando entre Páginas do app
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
+## Enviando um Formulário
+
+
+
+---
+
+[Voltar ao Topo](#m%C3%B3dulo-12)
+
+---
+
From 3b87ba9a6c557beafe3d0f555ca7e38d822d1fba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Alexandre=20Viana=20Marques?=
<74380592+jalexandrevm@users.noreply.github.com>
Date: Sun, 20 Mar 2022 23:05:11 -0300
Subject: [PATCH 2/3] Calculadora de Notas e teste
Criado testes para a calculadora de notas
---
.../calculadora_de_notas.py" | 113 ++++++++++++++++++
.../test_calculadora_notas.py" | 91 ++++++++++++++
2 files changed, 204 insertions(+)
create mode 100644 "mod-13/exerc\303\255cios/calculadora_de_notas.py"
create mode 100644 "mod-13/exerc\303\255cios/test_calculadora_notas.py"
diff --git "a/mod-13/exerc\303\255cios/calculadora_de_notas.py" "b/mod-13/exerc\303\255cios/calculadora_de_notas.py"
new file mode 100644
index 0000000..b9bbae0
--- /dev/null
+++ "b/mod-13/exerc\303\255cios/calculadora_de_notas.py"
@@ -0,0 +1,113 @@
+class Aluno:
+ _nome = ""
+ _nota = 0
+ def __init__(self, nome, nota) -> None:
+ self._nome = nome
+ self._nota = nota
+ def get_nota(self):
+ return self._nota
+ def get_nome(self):
+ return self._nome
+ pass
+ pass
+
+class Turma:
+ _matriculados = []
+ _media = 0
+ def add_aluno(self, aluno):
+ self._matriculados.append(aluno)
+ def set_nota_aprovacao(self, nota):
+ self._media = nota
+ def get_nota_aprovacao(self):
+ return self._media
+ def get_alunos(self) -> list:
+ return self._matriculados
+ def get_qtd_alunos(self) -> int:
+ return len(self._matriculados)
+ pass
+
+class CalculadoraDeNotas:
+ def __init__(self, turma: Turma) -> None:
+ self.turma = turma
+ pass
+ def get_media(self):
+ qtd_alunos = len(self.matriculados)
+ soma = 0
+ for aluno in self.matriculados:
+ soma += aluno.get_nota()
+ return 0 if qtd_alunos == 0 else (soma / qtd_alunos)
+ def get_maior_nota(self):
+ aluno_nota_alta = None
+ for aluno in self.turma.get_alunos():
+ if not aluno_nota_alta:
+ aluno_nota_alta = aluno
+ if aluno_nota_alta.get_nota() < aluno.get_nota():
+ aluno_nota_alta = aluno
+ return aluno_nota_alta.get_nota()
+ pass
+ def get_menor_nota(self):
+ aluno_nota_baixa = None
+ for aluno in self.turma.get_alunos():
+ if not aluno_nota_baixa:
+ aluno_nota_baixa = aluno
+ if aluno_nota_baixa.get_nota() > aluno.get_nota():
+ aluno_nota_baixa = aluno
+ return aluno_nota_baixa.get_nota()
+ pass
+ def get_aprovados(self):
+ lista_resultado = []
+ for aluno in self.turma.get_alunos():
+ if aluno.get_nota() >= self.media:
+ lista_resultado.append(aluno)
+ return lista_resultado
+ pass
+ def get_reprovados(self):
+ lista_resultado = []
+ for aluno in self.turma.get_alunos():
+ if aluno.get_nota() < self.media:
+ lista_resultado.append(aluno)
+ return lista_resultado
+ pass
+ def get_notas_alpha(self):
+ lista_resultado = []
+ for aluno in self.turma.get_alunos():
+ lista_resultado.append(
+ aluno.get_nome(),
+ self.converte_nota(aluno.get_nota())
+ )
+ return lista_resultado
+ pass
+ def converte_nota(self, nota):
+ if nota == 10:
+ return "A+"
+ elif 9 <= nota < 10:
+ return "A"
+ elif 7 <= nota < 9:
+ return "B"
+ elif 5 <= nota < 7:
+ return "C"
+ elif 3 <= nota < 5:
+ return "D"
+ elif 1 <= nota < 3:
+ return "E"
+ elif 0 <= nota < 1:
+ return "F"
+ pass
+ pass
+
+"""
+CALCULADORA DE NOTAS
+====================
+1. Recebe uma turma, composta por uma lista de Alunos(nome, nota) e média para aprovar um aluno.
+2. Calcula a média das notas da turma (get_media).
+3. Qual a maior e menor nota (get_maior_nota, get_menor_nota).
+4. Retorna alunos aprovados e reprovados (get_aprovados, get_reprovados).
+5. Retorna lista de notas em representação de "letra".
+ - nota == 10 => "A+"
+ - 9 <= nota < 10 => "A"
+ - 7 <= nota < 9 => "B"
+ - 5 <= nota < 7 => "C"
+ - 3 <= nota < 5 => "D"
+ - 1 <= nota < 3 => "E"
+ - 0 <= nota < 1 => "F
+"""
diff --git "a/mod-13/exerc\303\255cios/test_calculadora_notas.py" "b/mod-13/exerc\303\255cios/test_calculadora_notas.py"
new file mode 100644
index 0000000..af62ced
--- /dev/null
+++ "b/mod-13/exerc\303\255cios/test_calculadora_notas.py"
@@ -0,0 +1,91 @@
+from calculadora_de_notas import Aluno, Turma, CalculadoraDeNotas
+import unittest
+
+class TestAluno(unittest.TestCase):
+ def setUp(self) -> None:
+ self.aluno1 = Aluno("pedro", 7.5)
+ self.aluno2 = Aluno("victor", 9)
+ self.aluno3 = Aluno("cisco", 3)
+ self.aluno4 = Aluno("jonas", 0.5)
+ self.aluno5 = Aluno("brena", 10)
+ self.aluno6 = Aluno("livia", 9.5)
+ def test_retorna_nome(self):
+ self.assertEqual(self.aluno1.get_nome(), "pedro")
+ self.assertEqual(self.aluno5.get_nome(), "brena")
+ self.assertEqual(self.aluno6.get_nome(), "livia")
+ def test_retorna_nota(self):
+ self.assertEqual(self.aluno2.get_nota(), 9)
+ self.assertEqual(self.aluno3.get_nota(), 3)
+ self.assertEqual(self.aluno4.get_nota(), 0.5)
+ pass
+class TestTurmaAdicionaAluno(unittest.TestCase):
+ def setUp(self) -> None:
+ self.aluno1 = Aluno("pedro", 7.5)
+ self.aluno2 = Aluno("victor", 9)
+ self.aluno3 = Aluno("cisco", 3)
+ self.aluno4 = Aluno("jonas", 0.5)
+ self.turma1 = Turma()
+ def test_adiciona_aluno_turma(self):
+ self.assertEqual(self.turma1.get_qtd_alunos(), 0)
+ self.turma1.add_aluno(self.aluno1)
+ self.assertEqual(self.turma1.get_qtd_alunos(), 1)
+ self.turma1.add_aluno(self.aluno2)
+ self.assertEqual(self.turma1.get_qtd_alunos(), 2)
+ self.turma1.add_aluno(self.aluno3)
+ self.assertEqual(self.turma1.get_qtd_alunos(), 3)
+ self.turma1.add_aluno(self.aluno4)
+ self.assertEqual(self.turma1.get_qtd_alunos(), 4)
+ self.assertIn(self.aluno3, self.turma1.get_alunos())
+ self.assertIn(self.aluno2, self.turma1.get_alunos())
+
+class TestTurmaNotaAprovacao(unittest.TestCase):
+ def setUp(self) -> None:
+ self.aluno1 = Aluno("pedro", 7.5)
+ self.aluno2 = Aluno("victor", 9)
+ self.turma2 = Turma()
+ def test_define_nota_aprova(self):
+ self.assertLessEqual(
+ self.turma2.get_nota_aprovacao(),
+ 10,
+ )
+ self.turma2.set_nota_aprovacao(7)
+ self.assertLessEqual(
+ self.turma2.get_nota_aprovacao(),
+ 7,
+ )
+ self.turma2.set_nota_aprovacao(5)
+ self.assertLessEqual(
+ self.turma2.get_nota_aprovacao(),
+ 6,
+ )
+ self.turma2.set_nota_aprovacao(9)
+ self.assertGreaterEqual(
+ self.turma2.get_nota_aprovacao(),
+ 6,
+ )
+ pass
+
+class TestTurmaRetornaAluno(unittest.TestCase):
+ def setUp(self) -> None:
+ self.aluno1 = Aluno("pedrito", 7.5)
+ self.aluno2 = Aluno("vilma", 9)
+ self.aluno3 = Aluno("francisco", 3)
+ self.aluno4 = Aluno("joana", 0.5)
+ self.aluno5 = Aluno("tiana", 8.5)
+ self.turma3 = Turma()
+ self.turma3.add_aluno(self.aluno1)
+ self.turma3.add_aluno(self.aluno2)
+ self.turma3.add_aluno(self.aluno3)
+ self.turma3.add_aluno(self.aluno4)
+ self.turma3.add_aluno(self.aluno5)
+ def test_verifica_alunos(self):
+ self.assertIn(self.aluno2, self.turma3.get_alunos())
+ self.assertIn(self.aluno3, self.turma3.get_alunos())
+ def test_quantidade_alunos(self):
+ for it in self.turma3.get_alunos():
+ print(it.get_nome())
+ self.assertEqual(self.turma3.get_qtd_alunos(), 4)
+ pass
+ pass
+
+unittest.main()
From 1e0ccf67a4b3a6ac7586e2e5fcb7280b77990578 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Alexandre=20Viana=20Marques?=
<74380592+jalexandrevm@users.noreply.github.com>
Date: Sun, 20 Mar 2022 23:22:16 -0300
Subject: [PATCH 3/3] Capturas das mensagens
Tirei alguns prints pra mostrar o erro
---
.../exerc\303\255cios/Captura de Tela (32).png" | Bin 0 -> 21666 bytes
.../exerc\303\255cios/Captura de Tela (33).png" | Bin 0 -> 92565 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 "mod-13/exerc\303\255cios/Captura de Tela (32).png"
create mode 100644 "mod-13/exerc\303\255cios/Captura de Tela (33).png"
diff --git "a/mod-13/exerc\303\255cios/Captura de Tela (32).png" "b/mod-13/exerc\303\255cios/Captura de Tela (32).png"
new file mode 100644
index 0000000000000000000000000000000000000000..c4d61cb06dbddef734a1344b27c453567e51c4a7
GIT binary patch
literal 21666
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