Como criar um cadastro de usuario? Me ajudem dando dicas
Estou criando um pequeno crud de usuarios e me bateu uma duvida estou desenvolvendo corretamente? Gostaria que pudessem me dar um norte e me ajudar a como desenvolver ,eu crud.
Contexto: É uma rota feita em nodejs com ts, express, knex e pg. Resgistra um usuario e salva informações em duas tabelas.
Segue o banco
CREATE TABLE "usuario_login" (
"id_usuario" serial PRIMARY KEY,
"nome_usuario" varchar(255) NOT NULL,
"senha_usuario" varchar(255) NOT NULL
);
CREATE TABLE "usuario_info" (
"id" serial PRIMARY KEY,
"id_usuario" integer,
"nome" varchar(255),
"data_cadastro" timestamp DEFAULT 'current_timestamp',
"pontos" integer,
"email" varchar(255),
"github" varchar(255),
"linkedin" varchar(255)
);
Segue o código que desenvolvi para fazer o registro:
import { Request, Response } from "express";
import { knex } from "../config/conexaoDB";
import { hashSync } from "bcrypt";
export const registro = async (request: Request, response: Response) => {
const { nome_usuario, senha_usuario } = request.body
const { nome, email, github, linkedin } = request.body
try {
const salt: number = Number(process.env.SALT)
const senha = hashSync(senha_usuario, salt)
const id = await knex('usuario_login')
.insert({
nome_usuario,
senha_usuario: senha
}).returning('id_usuario')
const user = await knex('usuario_info')
.insert({
id_usuario: id[0].id_usuario,
nome,
pontos: 0,
email: email || '',
github: github || '',
linkedin: linkedin || '',
}) .returning('*')
return response.status(201).json(user)
} catch (error) {
console.log(error)
return response.status(500).json({Mensagem: "Erro interno do servidor!"})
}
}
export const login = async (request: Request, response: Response) => {
}
Aceito todo tipo de dicas para melhorar meu desenvolvimento.