首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在每次保存时使用Mongoose模式更新当前日期的属性?

在Mongoose中,要在每次保存时更新当前日期的属性,可以使用Mongoose的中间件。Mongoose提供了一些生命周期中间件,如pre、post等,可以在文档保存前或保存后执行相应的操作。这里我们需要使用pre中间件,在保存文档之前更新属性。

首先,定义一个模式,例如:

代码语言:javascript
复制
const mongoose = require('mongoose');

const Schema = mongoose.Schema;

const ExampleSchema = new Schema({
  name: String,
  updatedAt: {
    type: Date,
    default: Date.now
  }
});

ExampleSchema.pre('save', function(next) {
  this.updatedAt = Date.now();
  next();
});

const ExampleModel = mongoose.model('Example', ExampleSchema);

在这个例子中,我们定义了一个名为ExampleSchema的模式,其中包含一个字符串属性name和一个日期属性updatedAt。我们使用pre中间件,在保存文档之前更新updatedAt属性的值为当前日期。

接下来,你可以使用ExampleModel来创建和保存文档,每次保存时updatedAt属性都会被更新为当前日期:

代码语言:javascript
复制
const example = new ExampleModel({ name: 'example' });

example.save(function(err) {
  if (err) {
    console.error(err);
  } else {
    console.log('Document saved successfully');
  }
});

这样,每次保存文档时,updatedAt属性都会被更新为当前日期。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券