Zatímco eggyal
Odpověď je správný způsob, jak dělat věci v MySQL, někteří z nás mohou pracovat v prostředí nebo týmu, který vyžaduje použití unixového časového razítka místo datetime/timestamp.
Zjistil jsem, že skvělý způsob, jak toho dosáhnout, je použít háčky uvnitř sequelize. Do spodní části každého z vašich modelů můžete přidat tento kód:
{
tableName: 'Addresses',
hooks : {
beforeCreate : (record, options) => {
record.dataValues.createdAt = Math.floor(Date.now() / 1000);
record.dataValues.updatedAt = Math.floor(Date.now() / 1000);
},
beforeUpdate : (record, options) => {
record.dataValues.updatedAt = Math.floor(Date.now() / 1000);
}
}
}
Tím se vloží createdAt
a updatedAt
pole jako unixová časová razítka.