Я пытался обновить некоторые модели при sequelize, и когда я запускал программу, sequelize.sync выдавал ошибку
ошибка: повторяющееся значение ключа нарушает уникальное ограничение "pg_type_typname_nsp_index"
и
'Ключ (typname, typnamespace) = (person_id_seq, 2200) уже существует.'
Я закрыл соединение с Postgres через pgadmin4 и повторно запустил скрипт, и он успешно обновил / создал определения моей модели.
Я отбросил таблицы и попытался воссоздать их, и, разумеется, он потерпит неудачу каждый раз, когда у меня было более 1 соединения.
Я использую экземпляр postgres на heroku с планом хобби , поэтому я не уверен, что ограничение ограничено этим
Модель:
db.Person = sequelize.define('person', {
id: {
type: Sequelize.BIGINT,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
first_name: {
type: Sequelize.STRING,
allowNull: false
},
last_name: {
type: Sequelize.STRING,
allowNull: false
},
email: {
type: Sequelize.STRING,
unique: true,
allowNull: false
},
passwordHash: {
type: Sequelize.TEXT,
allowNull: false
}
},
{
underscored: true,
freezeTableName: true
});
db.Ingredient = sequelize.define('ingredient', {
id: {
type: Sequelize.BIGINT,
primaryKey: true,
autoIncrement: true,
allowNull: false,
},
name: {
type: Sequelize.TEXT,
allowNull: false
}
},
{
underscored: true,
freezeTableName: true
});
db.PersonIngredient = sequelize.define('person_ingredient', {
id: {
type: Sequelize.BIGINT,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
custom_ingredient: {
type: Sequelize.TEXT
}
},
{
underscored: true,
freezeTableName: true
});