我使用下面的sequelize beforeCreate Hook来保存365天的logintokens:
let hooks = {
setExpires: (instance, options, done) => {
if(instance.get('expires')) {
return done();
}
instance.set('expires', Sequelize.literal('NOW() + INTERVAL 1 YEAR'));
return done();
}
};
Logintoken.beforeCreate(hooks.setExpires);
Logintoken.beforeBulkCreate(hooks.setExpires);
只要我使用MySQL,它就能很好用。其他方言如SQLite不理解NOW() + INTERVAL 1 YEAR
,这是不好的。是否有内置的跨语言方式来实现我在这里尝试做的事情?
我已经研究过这些文档,用谷歌搜索,甚至看看源代码,但找不到任何看起来像日期计算的内容。