Estudo de API RESTful para gestão de escolas
API desenvolvida com Flask e SQLAlchemy para gerenciamento de professores, turmas e alunos, seguindo o padrão MVC. Ideal para instituições que desejam controlar o cadastro de professores, alunos e suas turmas
- Python 3
- Flask
- SQLAlchemy
- MySQL
- Flasgger (Swagger UI)
app/
├── app.py #Ponto de entrada da aplicação Flask
├── config.py #Configurações de ambiente e banco de dados
├── models/
│ ├── alunos.py # Model de Alunos
│ ├── turmas.py # Model de Turmas
| └── professores.py # Model de Professores
├── controller/
│ ├── sala.py # Controller de Alunos
│ ├── turma.py # Controller de Turmas
│ └── reserva.py # Controller de Professores
A aplicação utiliza MySQL. O arquivo config.py já possui um exemplo de conexão via pymysql:
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://admin:SenhaForte123@db:3306/school-system"GET /alunos - Lista todos os alunos.
GET /alunos/{id} - Retorna os dados de um aluno.
POST /alunos - Cria um novo aluno.
PUT /alunos/{id} - Atualizar um aluno existente.
DELETE /alunos/{id} - Deletar um aluno existente.
GET /turmas - Lista todas as turmas.
GET /turmas/{id} - Retorna os dados de uma turma.
POST /turmas - Cria uma nova turma.
PUT /turmas/{id} - Atualizar uma turma existente.
DELETE /turmas/{id} - Deletar uma turma existente.
GET /professores - Lista todos os professores.
GET /professores/{id} - Retorna os dados de um professor.
POST /professores - Cria um novo professor.
PUT /professores/{id} - Atualizar um professor existente.
DELETE /professores/{id} - Deletar um professor existente.
POST /resetar Reseta todos os dados de alunos, turmas e professores do banco
📌 Observações Swagger UI está disponível em /apidocs (habilitado por padrão com Flasgger).
repositório: https://github.com/GabrielCecconi25/Reservation-System
repositório: https://github.com/VassaloSama/Activity_system