5

タイムスタンプを持つようにテーブルをセットアップし、それらを使用するようにブックシェルフを構成しました。通常はすべてが正常に行われ、bookshelf がタイムスタンプを処理しますが、タイムスタンプを指定したい場合がありますが、指定しようとすると値が無視され、現在の日付が使用されます。

ユースケースを本質的なものまで単純化しようとしました:

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
    })
  }
}

hasTimestamps通常のユースケース用に構成したままにしたいと思います。Bookshelf でタイムスタンプの動作をオーバーライドできるようにすることはできますか?

4

2 に答える 2