Antes de iniciar qualquer desenvolvimento do Backend, configure o seu sistema
Outra forma de configurar o seu ambiente é executando o seguinte comando:
pip install -r requirements.txt
Pois o arquivo requirements.txt tem todos os dados e versões do sistema que você precisa instalar e configurar o seu sistema.
Para rodar/buildar a aplicação, execute o comando abaixo:
python manage.py runserver
Usando o Docker
Execute o comando da seção Configuração do Docker no final deste README onde ele executará a migração e o runserver
Para testar e implementar dados no banco de dados, usamos o Shell do Python e para rodar ele, executamos o comando abaixo:
python manage.py shell
Após isso, realizamos os testes com cada model importando cada um deles e fazendo as queries desejadas. Vejam alguns exemplos abaixo:
Primeiro, importamos os modelos que queremos realizar a query.
from twqsystem.models import Relatorio
Depois podemos realizar as queries
Relatorio.objects.all()
Relatorio.objects.create('parametros')
Após as mudanças feitas no arquivo twqsystem > models.py realize o seguinte comando abaixo para iniciar a migração dos dados para o banco de dados:
python manage.py makemigrations
Após isso, execute o comando para subir as migrações para o banco de dados:
python manage.py migrate
Feito a migração! Você já pode testar usando o Shell as novas mudanças. Para subir para o docker faça o passo abaixo.
Usando o Docker
Execute o comando da seção Configuração do Docker no final deste README onde ele executará a migração e o runserver
Os models foram definidos no arquivo: twqsystem > models.py e foram baseados nos modelos abaixo.
As configurações de urls.py do projeto estão em teamworkquality > urls.py e da aplicação dos sistemas estão configurados em twqsystem > urls.py
Os métodos criados estão no arquivo: twqsystem > views.py e nele há comentários de como cada método e chamada foi implementado.
Obs.: Alguns métodos foram implementados nos models (twqsystem > models.py) usando o decorator @classmethod para organizar o fluxo de chamada mas as mesmas podem ser realizadas na view
Todos os métodos retornam JSON via HttpRequest ou HttpResponse via uma chamada GET e via uma chamada POST retornam um status do HttpResponseRedirect
O plugin escolhido para exportação de arquivos em PDF é o reportLab que é baixando automaticamente quando realizamos a instalação do requirements.
Para utilização do serviço de email, usamos o próprio SMTP do Django e implementamos no arquivo: twqsystem > views.py pelo método send_relatorio_email
Para facilitar o processo de desenvolvimento e garantir a consistência entre os ambientes.
Antes de qualquer coisa deve-se realizar o download do Docker Community Edition
Uma vez realizado o download e instalação do docker basta executar o seguinte commando na raiz do projeto:
docker-compose -f dev.docker-compose.yml up
Para testar via Shell no docker, execute os comandos abaixo:
docker exec -it teamworkqualityreport_server_1 bash
cd backend
python manage.py shell
Obs.: Caso ao executar o comando acima tenha dado erro. Para continuar rodando a aplicação sem erros, vá em teamworkquality > settings.py e nas configurações de DATABASES em HOST coloque localhost e não db e execute o comando abaixo que vai estar tudo certo!
python manage.py runserver