Я использую Sequelize 4.42.0 и PostgreSQL 11.2 и очень стараюсь, чтобы increment
работал, я делаю, как описано в документации .
Я искал везде, но не могу найти решение.
Я также пытался с:
await Users.update({ testIncrement: database.literal('testIncrement + 1') }, {
where: { id: user.id }
})
код
Контроллер
export const test = async ({ body, user }, res) => {
try {
await Users.increment('testIncrement', { where: { id: user.id }})
} catch(error) {
console.log(error)
}
}
Модель
const Users = database.define('users',
{
id: {
primaryKey: true,
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV4
},
testIncrement: {
defaultValue: 0,
type: Sequelize.INTEGER,
},
}
)
export default Users
Ожидаемое
testIncrement для увеличения на 1
Результаты
error: column "0" of relation "users" does not exist
at Connection.parseE (/Users/.../node_modules/pg/lib/connection.js:555:11)
at Connection.parseMessage (/Users/.../node_modules/pg/lib/connection.js:380:19)
at Socket.<anonymous> (/Users/.../node_modules/pg/lib/connection.js:120:22)
at Socket.emit (events.js:189:13)
at Socket.EventEmitter.emit (domain.js:441:20)
at addChunk (_stream_readable.js:284:12)
at readableAddChunk (_stream_readable.js:265:11)
at Socket.Readable.push (_stream_readable.js:220:10)
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
name: 'error',
length: 121,
severity: 'ERROR',
code: '42703',
detail: undefined,
hint: undefined,
position: '35',
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'analyze.c',
line: '2346',
routine: 'transformUpdateTargetList',
sql:
'UPDATE "users" SET "testIncrement"="testIncrement"+ 1,"0"=\'id\',"1"=\'testIncrement\',"2"=\'createdAt\',"3"=\'updatedAt\' WHERE "id" = \'adbe346a-b117-4f21-aa74-8a46d1ededae\' RETURNING *' }