在sequelize.js中禁用updatedAt(更新日期)字段

时间:2016-09-20 07:07:28

标签: node.js sequelize.js tedious

我使用sequelize-auto生成架构,我尝试使用findOne()并收到此错误:

Unhandled rejection SequelizeDatabaseError: Invalid column name 'updatedAt'.

在我的数据库表中没有字段updatedAt

例如我的表名是Users,我的代码是Users.findOne()updatedAt表中没有users字段。

db.users= sequelize.import(__dirname + "/models/users");
app.get('/users', function (req, res) {

  db.user.findOne().then(function (project) {
    res.json(project);
  })

});

如何解决?

1 个答案:

答案 0 :(得分:19)

有关Sequelize中模型的配置,请参阅documentation

在你的表的模型对象中应该是这样的。

var user = sequelize.define('user', { /* bla */ }, {
  // don't add the timestamp attributes (updatedAt, createdAt)
  timestamps: false,
  // your other configuration here
});

检查Usage of sequelize-auto-generation模块

  1. 为所有模型配置选项创建一个json文件(标记对象定义为here)。

  2. 执行命令时,您必须传递-a--addtional选项,以便传递json文件配置路径。