Как обновить значения объектов в сиквелизе - PullRequest
0 голосов
/ 19 июня 2020

Я определил модель в сиквелизе следующим образом

const a = global.sequelize.define('a', {
    userid: {
        type: Sequelize.STRING
    },
    data: {
        type: Sequelize.JSONB,
        a: {
            a: Sequelize.INTEGER,
            b: Sequelize.INTEGER,
            c: Sequelize.INTEGER,
            d: Sequelize.INTEGER
        },
        b: {
            a: Sequelize.INTEGER,
            b: Sequelize.INTEGER,
            c: Sequelize.INTEGER,
            d: Sequelize.INTEGER
        },
        c: {
            a: Sequelize.STRING,
            b: Sequelize.INTEGER
        },
        d: {
            a: Sequelize.STRING,
            b: Sequelize.INTEGER
        },
        defaultValue: {}
    }
});

Idk, если это лучший метод для определения модели, содержащей 2 столбца: идентификатор пользователя, данные, в которых данные будут такими

a: {
    a: 1, b: 1, c: 1, d: 1
},
b: {
    a: 1, b: 1, c: 1, d: 1
},
c: {
    a: 1, b: 1
},
d: {
    a: 1, b: 1
}

Но мне придется увеличивать, уменьшать или обновлять значение любого свойства. И я не знаю, как я делаю следующие вещи:

  1. Добавить 1 в data.aa, не затрагивая другие значения
  2. Установить 1 в data.aa, если data.aa этого не делает ' t exist
  3. Установить 1 в data.aa, не затрагивая другие значения

Пожалуйста, помогите мне, я не знаю, как это сделать с json данными

...