Este repositório contém o esqueleto de uma aplicação básica de exemplo para o desenvolvimento de APIs Rest por meio do DJango (Python).
- Clone este repositório.
- Copie o conteúdo do mesmo no repositório de destino.
- Customize a aplicação criando os controles de rotas conforme desejado (explicado abaixo).
- Copie o arquivo "common.env.dist" criando um "common.env".
- Configure no arquivo "common.env" os parâmetros de comunicação com o banco de dados.
- A variável "database_driver" pode receber um dos seguintes valores: "postgres", "mysql" e "oracle".
Segue os passos para a criação de uma nova rota:
- Edite o arquivo "app/urls.py".
- Crie uma classe nova para controle da nova rota, estendo a classe "app.view.abstract_view.AbstractView".
- Sobreescreva o método "rest_post()", adicionando o comportamento de controle de sua rota:
- Este método recebe uma "entrada" do tipo dict, correspondente ao json recebido no corpo de uma requisição post, e pressupõe que se retorne um dict de resultado, o qual será codificado no formato json, e adicionado no corpo da resposta HTTP.
- Obs.: Pode-se usar a classe "app.view.ping.PingView" como exemplo.
- Adicione um novo padrão de url apontando para a view recém criada, no arquivo "app.urls.py":
- Obs.: Pode-se usar a rota do "PingView" como exemplo.
- Inicie o banco de dados de exemplo (se desejar):
docker-compose up -d postgres
- Inicie o sistema do django usando wsgi e nginx:
docker-compose up -d app
- Abra a URL: http://localhost:80 (adicione a rota que desejar, porém há um template de exemplo sendo renderizado no index da aplicação).