node.js – 将created_at和updated_at字段添加到mongoose模式

有没有办法添加created_at和updated_at字段到一个mongoose模式,而不必在每次调用新的MyModel()时传递它们?

created_at字段将是一个日期,并且仅在创建文档时添加。
每当在文档上调用save()时,updated_at字段将用新的日期更新。

我已经尝试这在我的模式,但字段不显示,除非我expcitly添加它:

var ItemSchema = new Schema({
    name    : { type: String, required: true, trim: true }
  , created_at    : { type: Date, required: true, default: Date.now }
});
如果使用update()或findOneAndUpdate()

与{upsert:true}选项

你可以使用$ setOnInsert

var update = {
  updatedAt: new Date(),
  $setOnInsert: {
    createdAt: new Date()
  }
};
http://stackoverflow.com/questions/12669615/add-created-at-and-updated-at-fields-to-mongoose-schemas

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:node.js – 将created_at和updated_at字段添加到mongoose模式