UUIDs (Universally Unique Identifiers) são uma forma de identificar entidades de forma única em um sistema distribuído. No PostgreSQL, é possível usar UUIDs como valores de chave primária em suas tabelas. O Sequelize é uma biblioteca de mapeamento objeto-relacional (ORM) para Node.js que permite acessar bancos de dados de forma fácil e intuitiva. Você pode usar o Sequelize para gerar UUIDs automaticamente para as chaves primárias de suas tabelas no PostgreSQL, basta definir o tipo de campo da chave primária como UUID
e habilitar a opção defaultValue: Sequelize.UUIDV4
.
Exemplo de código:
const { Sequelize, Model, DataTypes } = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: 'postgres',
});
class User extends Model {}
User.init({
id: {
type: DataTypes.UUID,
defaultValue: Sequelize.UUIDV4,
primaryKey: true,
},
name: DataTypes.STRING,
}, { sequelize, modelName: 'user' });
sequelize.sync()
.then(() => User.create({
name: 'John',
}))
.then((user) => {
console.log(user.id); // imprime um UUID gerado automaticamente
});
Espero que isso ajude! Qualquer dúvida, basta perguntar.