Mysql
 sql >> Database >  >> RDS >> Mysql

Come definire un indice univoco su più colonne in sequelize

Puoi fare riferimento a questo documento http://docs.sequelizejs. com/en/latest/docs/models-definition/#indexes

Dovrai modificare la tua definizione come mostrato di seguito e sincronizzare le chiamate

var Tag = sequelize.define('Tag', {
    id: {
        type: DataTypes.INTEGER(11),
        allowNull: false,
        primaryKey: true,
        autoIncrement: true
    },
    user_id: {
        type: DataTypes.INTEGER(11),
        allowNull: false,
    },
    count: {
        type: DataTypes.INTEGER(11),
        allowNull: true
    },
    name: {
        type: DataTypes.STRING,
        allowNull: true,
    }
},
{
    indexes: [
        {
            unique: true,
            fields: ['user_id', 'count', 'name']
        }
    ]
});