bookshelf.js时间戳不工作
我现在正在试用bookshelf.js,并使用以下knex迁移创build了一个样本表:
exports.up = function(knex, Promise) { return knex.schema.createTable( "users", function( table ) { table.increments(); table.timestamps(); table.string( "email" ); } ); };
然后我定义了一个bookshelf.js模型:
var User = bookshelf.Model.extend( { tableName: "users" } );
并试图保存它:
var u = new User( { email: "john.doe@example.com" } ); u.save();
一切似乎工作,当我看着数据库,新的用户真的被保存,但时间戳列是NULL
。 在调用u.timestamp()
之前调用u.save()
似乎没有任何作用。
我在这里做错了什么?
哈,我终于明白了!
你必须告诉模型使用这样的时间戳:
var User = bookshelf.Model.extend( { tableName: "users", hasTimestamps: true } );