Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

criando tabela pelo npx

Estou fazendo o curso de node com sequelize e queria e criei os campos de cpf, nome, email, senha e outros, mas nos arquivos aparece só o cpf ao contrário do que acontece no vídeo, o que pode ser? Eu escrevi assim no powershell: npx sequelize-cli model:create --name Cliente --attributes cpf:bigint(11),nome:text,email:text,senha:text,cep:bigint,rua:text,numero:smallint,bairro:text,cidade:textInsira aqui a descrição dessa imagem para ajudar na acessibilidade

4 respostas
solução!

Oi Luis!

O que pode ter acontecido é que o comando model:create não reconhece os parênteses em cpf:bigint(11); o comando deve ser passado sem os parênteses, da mesma forma que você fez com o atributo cep. Normalmente estes parênteses teriam causado um erro do tipo unexpected token '(', porém como não estou usando Windows, não tenho como reproduzir exatamente da mesma forma.

Tente refazer o comando model:create somente com bigint, sem passar a quantidade de casas por parênteses. Essa informação você pode adicionar direto no arquivo de migração, depois de criado.

npx sequelize-cli model:create --name Cliente --attributes cpf:bigint,nome:text,email:text,senha:text,cep:bigint,rua:text,numero:smallint,bairro:text,cidade:text

OBS! Já que estamos falando sobre um campo de CPF, vale notar que bigint nem sempre é a melhor opção de tipo de dado pois, apesar de ocupar menos espaço que strings, pode causar erros como este aqui que precisariam ser tratados. Já o tipo varchar, embora ocupe mais espaço, nos livra desse tipo de problema e mantém a integridade do dado.

Bons estudos!

Ok, deu certo era isso mesmo, muito obrigado pela ajuda e pela dica do tipo do campo que deve ser usado também, não tinha conhecimento disso :) Além desse erro da criação da tabela quando eu fui desenvolvendo me aconteceu outro erro também na hora de usar o module.exports = router, não tenho ideia do que possa ser, postei ele mais cedo no fórum. Se puder dar uma olhada eu coloco o link da dúvida aqui.

Oi Luis, nosso time vai dar uma olhada no outro tópico. Consideramos esse aqui como resolvido, então!

Certo, muito obrigado :)