在bookshelf.js中手动设置时间戳记值

我有一个表设置了时间戳和书架configuration使用它们。 通常情况下,所有事情都会发生,因为它应该和书架照顾的时间戳,但我有一个情况下,我想指定他们,但是当我尝试这样做的值被忽略,并使用当前date。

我试图简化我的用例到基本要点:

var Author = Bookshelf.Model.extend({ tableName: 'authors', hasTimestamps: ['created_at', 'updated_at'], bookAuthors: function(){ return this.hasMany(require('.book_authors')); }, associateBookWithAuthor(bookId,timestamp) { return self.related('bookAuthors').create({ book_id: bookId, updated_at: timestamp, // ignored by bookshelf created_at: timestamp // also ignored }) } } 

我仍然想要保持为常规用例configuration的hasTimestamps 。 是否有可能让Bookshelf让我重写时间戳行为?

查看Bookshelf源代码created_at和updated_at在创build/插入时根据需要设置,并且从未读取您传入的模型: https : //github.com/tgriesser/bookshelf/blob/c83ada77d5c670a773c0b47c604b452cd0e03e86/src/base/model.js #L413

这使我的目标不可能。 反映在这似乎是一个好主意,不要重载这些列,并创build另一列我试图存储的date。