sga*_*a62 5 node.js sequelize.js
我想将 的值设置createdAt为过去的某个时间。
但是,我所有的尝试都无法更改createdAt数据库中的日期。值保持不变。
const yesterday = ( d => new Date(d.setDate(d.getDate()-1)) )(new Date);
// failed attempts
hang.createAt = yesterday;
hang.set('createdAt', yesterday);
hang.changed('createdAt', yesterday);
await hang.save();
Run Code Online (Sandbox Code Playgroud)
我也试过
const yesterday = ( d => new Date(d.setDate(d.getDate()-1)) )(new Date);
// failed attempt
await hang.update({ createdAt: yesterday });
Run Code Online (Sandbox Code Playgroud)
问题证明
2020-10-07T19:24:29.058Z // before
2020-10-07T19:24:29.058Z // after
Run Code Online (Sandbox Code Playgroud)
如何更改createdAt实例的值?
尝试这个
const yesterday = ( d => new Date(d.setDate(d.getDate()-1)) )(new Date);
hang.changed('createdAt', true);
hang.set('createdAt', yesterday,{raw: true});
await hang.save({
silent: true,
fields: ['createdAt']
});
Run Code Online (Sandbox Code Playgroud)
从文档
集:
raw: true
Run Code Online (Sandbox Code Playgroud)
如果为键定义了自定义 setter 函数,则将调用该函数。要绕过 setter,您可以在选项对象中传递 raw: true 。
并 保存:
silent: true
Run Code Online (Sandbox Code Playgroud)
如果为 true,则 updatedAt 时间戳将不会更新。
| 归档时间: |
|
| 查看次数: |
563 次 |
| 最近记录: |