Created_atとupdated_atが生成されるのではなく提供されるモデルをどのように定義しますか?
Sequelize(2次ストア)によってオブジェクトが作成/更新されるたびに生成するのではなく、保存したいcreated_at
およびupdated_at
フィールドのデータがすでにある場所からデータをインポートしています。
私はこれを機能させるためにモデル定義とオプションの可能なすべての順列を試してみましたが、それでも自分のフィールドを独自のタイムスタンプで上書きします:{silent: true}
など...
明確にするために、入力データはcreatedAtおよびupdatedAtであり、提供された入力値が使用され、sequelizeによって生成されるのではなく、created_atおよびupdated_atとしてモデルに格納されるように、sequelizeのbulkCreate()などを使用したいと思います。
これは私の現在のモデル定義です:
const Lead = sequelize.define('lead', {
objectId: {
type: Sequelize.STRING,
field: 'objectId',
primaryKey: true,
allowNull: false
},
firstName: {
type: Sequelize.STRING,
field: 'first_name'
},
lastName: {
type: Sequelize.STRING,
field: 'last_name'
},
phoneNumber: {
type: Sequelize.STRING,
field: 'phone_number'
},
createdAt: {
type: Sequelize.DATE,
field: 'created_at',
},
updatedAt: {
type: Sequelize.DATE,
field: 'updated_at'
}
}, {
freezeTableName: true, // Model tableName will be the same as the model name
timestamps: false,
underscored: true
});
オプションは
_timestamps: false,
_
timestamps
が記述されている場所完全に小文字
更新:
bulkCreate()
関数のコードを見ると、 タイムスタンプは常に更新されているように見えます なので、パッチがないと、これは現在不可能です。