📜 Este repositório trata-se de um projeto para realizar o CRUD (Create, Read, Update, Delete) de uma entidade Produto com o framework Django. Utilizou-se o método da Class Based Views (CBV) para automatizar e facilitar o encapsulamento das funcionalidades. Para a realização dos testes foi utilizado o pytest-django e como ambiente virtual utilizou-se o pipenv. Foi desenvolvida uma infraestrutura para o banco de dados postgrs, com as ferramentas Docker e Docker Compose. Utilizou-se o Django Rest Framework (DRF) para servir APIs. Por fim utilizou-se o framework frontend ReactJS para consumir a API do DRF. O projeto ainda foi posto em produção no heroku - link do deploy: GS_produto.
Aqui está a lista de coisas que você precisa configurar em sua máquina para utilizar este repositório:
- Python 3 (se você estiver usando Linux, é provável que já esteja instalado. Execute o comando python3 -V para verificar)
- Pip (o instalador de pacote Python padrão)
- NodeJS (em uma versão 6 ou superior) e npm (5.2+)
- Docker e Docker Compose
- Inicialmente insira como variaveis globais no sistema:
PIPENV_VENV_IN_PROJECT=1
PIPENV_IGNORE_VIRTUALENVS=1
- Instale o pipenv
pip install pipenv
- Instale as dependências de desenvolvimento
pipenv sync -d
- Execute o comando do Docker Compose.
docker-compose up
- Crie um arquivo .env com as configurações presentes em contrib/env-sample
DEBUG=TRUE
SECRET_KEY=defina sua chave secreta
ALLOWED_HOSTS=localhost, 127.0.0.1
DATABASE_URL=postgres://{{usuário do docker}}:{{senha do docker}}@localhost:{{porta}}/{{banco de dados}}
- Verifique a formatação do código segundo a PEP8 com o flake8
pipenv run flake8 .
- Execute os testes
pipenv run pytest
- Ative o shell do pipenv no seu prompt de comando:
pipenv shel
- realize as migrações para se banco de dados:
python manage.py makemigrations
python manage.py migrate
- Para criar o super usuário no se banco de dado utilize:
python manage.py createsuper user
- Para executar a aplicação utilize:
python manage.py runserver
Abaixo segue a demonstração da aplicação desenvolvida:
A API construida com o DRF pode ser obtida apartir do enpoint http://localhost:8000/api/produto/
.
Abaixo segue a demonstração da API desenvolvida sendo consumida pelo Postman:
A consulta da API com o framework ReactJA pode ser observada na pasta gs_frontend. para executa-la você pode utilizar o comando
npm start
Abaixo Segue a Demonstração do Reactjs consumindo a API fornecida pelo DRF:
- 22/12/2020 Criação do Projeto
Lucas Ravelllys – Portifólio
Distribuído sob a licença MIT. Veja LICENSE
para mais informações.
- Faça o fork do projeto (https://github.com/ravellys/crud-cliente/fork)
- Crie uma branch para sua modificação (
git checkout -b feature/fooBar
) - Faça o commit (
git commit -am 'Add some fooBar'
) - Push (
git push origin feature/fooBar
) - Crie um novo Pull Request