羽毛JS猫鼬:PUT使"createdAt"和"updatedAt"消失



我有一个服务(我还没有附加任何钩子)与以下猫鼬模式:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const restaurantSchema = new Schema({
  text: { type: String, required: true }
}, { timestamps: true });
const restaurantModel = mongoose.model('restaurant', restaurantSchema);
module.exports = restaurantModel;

问题是:每当我发送一个PUT请求时,createdAtupdatedAt都从我的对象中消失。

timestamps: true不应该让猫鼬保持时间戳并更新updatedAt的值吗?

正如Daff所说,这正是PUT的预期行为。阅读repo,我发现导致这种行为的是overwrite选项。默认设置为true,导致更新完全替换当前对象,不留下时间戳。

我真的应该使用PATCH只更新某些字段并保留时间戳。

相关内容

  • 没有找到相关文章

最新更新