Este projeto faz parte do meu portfólio pessoal, portanto, ficarei feliz se você puder me fornecer algum feedback sobre o projeto, código, estrutura ou qualquer coisa que você possa relatar que possa me tornar um desenvolvedor melhor!
Email-me: [email protected]
Conecte-se comigo no LinkedIn.
Além disso, você pode usar este projeto como desejar, estudar, fazer melhorias ou ganhar dinheiro com ele!
É grátis!
-
Curso;
-
Usuário;
-
Categoria;
-
Atividade;
-
Comprovante.
CAMPO | TIPO | NULO | EXTRA | COMENTARIOS |
---|---|---|---|---|
id | INT | NO | AUTO_INCREMENT | |
nome | VARCHAR(45) | NO | ||
quantidade | INT | NO |
CAMPO | TIPO | NULO | EXTRA | COMENTARIOS |
---|---|---|---|---|
id | INT | NO | AUTO_INCREMENT | |
nome | VARCHAR(45) | NO | ||
matricula | VARCHAR(30) | NO | ||
avatar | VARCHAR(30) | |||
VARCHAR(30) | SI | |||
senha | VARCHAR(100) | SI | ||
horas_computadas | VARCHAR(50) | NO | TEM VALOR PADRÃO INCIAL. 0 | |
id_curso | INT | NO | CHAVE EXTRAGEIRA |
CAMPO | TIPO | NULO | EXTRA | COMENTARIOS |
---|---|---|---|---|
id | INT | NO | AUTO_INCREMENT | |
nome | VARCHAR(45) | NO | ||
descricao | VARCHAR(250) | NO | ||
observacao | VARCHAR(45) | NO | ||
limite | INT | NO | ||
id_curso | INT | NO | CHAVE EXTRAGEIRA |
CAMPO | TIPO | NULO | EXTRA | COMENTARIOS |
---|---|---|---|---|
id | INT | NO | AUTO_INCREMENT | |
nome | VARCHAR(45) | NO | ||
descricao | VARCHAR(250) | NO | ||
tipo_comprovante | VARCHAR(45) | NO | ||
valor | INT | NO | ||
id_categoria | INT | NO | CHAVE EXTRAGEIRA |
CAMPO | TIPO | NULO | EXTRA | COMENTARIOS |
---|---|---|---|---|
id | INT | NO | AUTO_INCREMENT | |
nome | VARCHAR(45) | NO | ||
descricao | VARCHAR(250) | NO | ||
valor | INT | NO | ||
id_usuario | INT | NO | CHAVE EXTRAGEIRA | |
id_atividade | INT | NO | CHAVE EXTRAGEIRA |
index
: Listar todos registros;show
: Exibir um registro;store
: Criar novo registro;update
: Alterar um registro;destroy
: Remover um registro.
"O desenvolvimento do backend está sendo feito por desenvolvimento Orientado por Testes (Test Driven Development). Desenvolvimento orientado a TDD baseia-se em pequenos ciclos de repetições, onde onde para cada funcionalidade do sistema um teste é criado antes. Este novo teste criado inicialmente falha, já que ainda não temos a implementação da funcionalidade em questão e, em seguida, implementamos a funcionalidade para fazer o teste passar!" ( Devmedia,2018).
Red,Green, Refactor. Ou seja:
- Escrevemos um Teste que inicialmente não passa (
Red
); - Adicionamos uma nova funcionalidade do sistema;
- Fazemos o Teste passar (
Green
); - Refatoramos o código da nova funcionalidade (
Refactoring
); - Escrevemos o próximo Teste.
Precisa instalar o provedor de validação do adonis
adonis install @adonisjs/validator
Adiciona lá no start/app.js
const providers = [
'@adonisjs/validator/providers/ValidatorProvider'
]
A validação de AdonisJ
usa o Indicative. Para detalhes completos sobre o uso, consulte a documentação indicativa oficial.
Indicativo é uma biblioteca de validação de dados para validar objetos de dados complexos, definindo um esquema legível por humanos. Em poucas palavras, você pode
- Valide objetos e matrizes aninhados.;
- Defina mensagens de erro de validação personalizadas;
- Use formatadores de erro para definir o formato das mensagens de erro. Por exemplo: JSON: formatador de API para formatar mensagens de erro de acordo com a especificação JSON: API;
- Opção para remover propriedades não validadas do objeto de dados;
- Suporte para validações assíncronas;
- API extensível para adicionar regras personalizadas;
- Desinfetante de dados.
Obs: Um erro que estava ocorrendo nas validações era na questão de inteiros e isso se apresentou como bug no repositório do Adonisjs porém, já foi corrigida na versão 4.1 do AdonisJs. Para fazer a atualização basta seguir os paços abaixo:
O primeiro passo é atualizar todas as dependências.
Usamos o npm-check
para obter as versões mais recentes dos pacotes:
npm install -g npm-check
Execute o seguinte comando para atualizar as dependências interativamente:
npm-check -u
Mais informações em : Documentação
Para clonar e executar este aplicativo, você precisará do Git, Node.js v10.16 ou superior + Yarn v1.13 ou superior + AdonisJs 4.0 ou superior instalado no seu computador. Na sua linha de comando:
# Clonar este repositório
$ https://github.com/brunosousadev/hora-complementar.git
# Entre no repositório
$ cd hora-complementar
# Instalar dependências
$ yarn install
# Execute o servidor
$ adonis serve --dev
- Faça um fork do repositório.
- Clone este fork.
$ git clone URLDOSEUFORK
- Crie sua branch para realizar as modificações desejadas.
$ git checkout -b minha-modificacao
- Realize as modificações.
- Confirme suas alterações.
ou
$ git commit -am 'Modifica algo'
$ git add . $ git commit -m 'Modifica Algo'
- Realize um push para a branch remota do seu fork.
git push origin minha-modificacao
- Na interface do github, em seu fork, crie um pull request
Este projeto está licenciado sob a licença MIT - consulte o arquivo LICENSE para obter detalhes