我现在正在尝试使用bookshelf.js,并使用以下knex迁移创建了一个示例表:

exports.up = function(knex, Promise) {
  return knex.schema.createTable( "users", function( table ) {
        table.increments();
        table.timestamps();
        table.string( "email" );
    } );
};

然后,我定义了一个bookhelf.js模型:
var User = bookshelf.Model.extend( {
    tableName: "users"
} );

并尝试保存它:
var u = new User( { email: "[email protected]" } );
u.save();

一切似乎都正常,当我查看数据库时,确实保存了新用户,但是时间戳列为NULL。同样,在调用u.timestamp()之前先调用u.save()似乎没有任何效果。

我在这里做错了什么?

最佳答案

哈,我终于明白了!

您必须告诉模型使用这样的时间戳:

var User = bookshelf.Model.extend( {
    tableName: "users",
    hasTimestamps: true
} );

关于javascript - bookshelf.js时间戳不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26196772/

10-10 09:23