NodeJS - Sequelize 更新问题
NodeJS - Sequelize updating issue
我的更新方法有问题。
我正在这样做:
// Char is outside the object where update method is...
Char = db.define('characters', {}, {
tableName: 'characters',
updatedAt: false,
createdAt: false
});
//... part of the whole object
update: function ( columns, callback ) {
Char.update( columns, { where: { id: this.get('char_id') } } )
.complete( function ( err, res ) {
f.log(res, 'd');
});
},
当我将 updatedAt 定义为 false 时,更新完全停止工作,我不知道如何防止这种情况发生,除了在我的数据库中添加一列。它让我感到震惊 "Query was empty"。
因此,我尝试将 updatedAt 定义为 'created_at' - 我的 table 中的现有列,然后更新有效,但根本无效。查询仅使用时间戳更新 'created_at',但不是我的首选列。
我在控制台中收到的示例:
Executing (default): UPDATE characters SET created_at='2015-02-03 21:03:00' WHERE id='1'
应该是:
Executing (default): UPDATE characters SET health = ..., created_at='2015-02-03 21:03:00' WHERE id='1'
我调试columns参数是否为有效参数。是的,它是-我发送一个对象并接收一个对象。
谁能帮帮我。我尝试了旧方法、新方法、阅读帖子,但一无所获。
编辑:
我发现我哪里错了。我应该定义我想要 update/insert 的所有字段。
由于我的英语,我没有正确理解文档中的定义函数。我以为当你定义字段时你会重新创建你的 table 结构,但现在我意识到,如果 运行 sync() 方法会发生这种情况。
我发现我哪里错了。我应该定义我想要 update/insert 的所有字段。由于我的英语,我没有正确理解文档中的定义函数。我以为当你定义字段时你会重新创建你的 table 结构,但现在我意识到,如果 运行 sync() 方法会发生这种情况。
我的更新方法有问题。
我正在这样做:
// Char is outside the object where update method is...
Char = db.define('characters', {}, {
tableName: 'characters',
updatedAt: false,
createdAt: false
});
//... part of the whole object
update: function ( columns, callback ) {
Char.update( columns, { where: { id: this.get('char_id') } } )
.complete( function ( err, res ) {
f.log(res, 'd');
});
},
当我将 updatedAt 定义为 false 时,更新完全停止工作,我不知道如何防止这种情况发生,除了在我的数据库中添加一列。它让我感到震惊 "Query was empty"。 因此,我尝试将 updatedAt 定义为 'created_at' - 我的 table 中的现有列,然后更新有效,但根本无效。查询仅使用时间戳更新 'created_at',但不是我的首选列。
我在控制台中收到的示例:
Executing (default): UPDATE characters SET created_at='2015-02-03 21:03:00' WHERE id='1'
应该是:
Executing (default): UPDATE characters SET health = ..., created_at='2015-02-03 21:03:00' WHERE id='1'
我调试columns参数是否为有效参数。是的,它是-我发送一个对象并接收一个对象。
谁能帮帮我。我尝试了旧方法、新方法、阅读帖子,但一无所获。
编辑: 我发现我哪里错了。我应该定义我想要 update/insert 的所有字段。 由于我的英语,我没有正确理解文档中的定义函数。我以为当你定义字段时你会重新创建你的 table 结构,但现在我意识到,如果 运行 sync() 方法会发生这种情况。
我发现我哪里错了。我应该定义我想要 update/insert 的所有字段。由于我的英语,我没有正确理解文档中的定义函数。我以为当你定义字段时你会重新创建你的 table 结构,但现在我意识到,如果 运行 sync() 方法会发生这种情况。