【问题标题】:Sequelize: Can't do update on column UpdatedAtSequelize:无法对列 UpdatedAt 进行更新
【发布时间】:2019-08-05 19:19:50
【问题描述】:

我有一个使用 Sequelize 作为 ORM 的快速应用程序。基本上,列 createdAt 和 updatedAt 由 Sequelize 自动生成。 每次我更新一行中的数据时,除了列 updatedAt 之外,列 updatedAt 将根据当前日期时间进行更新。 但是当我尝试更新列updateAt时,它没有更新列updatedAt.的值 我有几种基于文档和另一个问题的方法,例如:

value.set('createdAt', new Date());
   value.save().then(value1 => {
            console.log('UpdatedAt has been updated');
            next();
   }
)

    Token.update(
    {
        updatedAt: new Date
    },
    {
        where: {
            token_id: token
        }
    }
).then(value1 => {
        console.log('Token UpdatedAt has been updated');
    }
)

但两者都不起作用。

有人知道为什么吗?以及如何解决这个问题。谢谢。

【问题讨论】:

  • 嗯...在第一个示例中,您尝试更新createdAt 列而不是updatedAt,在第二个示例中 - 有一个错字updatedAt: new Date 应该是updatedAt: new Date()

标签: node.js express sequelize.js


【解决方案1】:

简短而简单的方法是:

Token.changed('updatedAt', true); // <--- This will update the updatedAt field

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-13
  • 1970-01-01
  • 2018-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多