mongoose-simpletimestamps

Simple timestamps for mongoose

npm install mongoose-simpletimestamps
2 downloads in the last day
11 downloads in the last week
92 downloads in the last month

Simple Timestamps Plugin for mongoose

About

This is a very simple mongoose plugin to add 'createdAt' and 'updatedAt' fields to your objects.

This differs from the UseTimestamps plugin from mongoose-types in that createdAt is not a virtual field, and is instead stored with the object.

Example

var mongoose = require("mongoose");
var db = mongoose.createConnection("mongodb://localhost/sampledb");
var SimpleTimestamps = require( "mongoose-SimpleTimestamps" ).SimpleTimestamps;
var UserSchema = new Schema({
    username: String
});
UserSchema.plugin(SimpleTimestamps);
mongoose.model('User', UserSchema);
var User = db.model('User', UserSchema);

var user = new User({username: 'Prince'});
user.save(function (err) {
  console.log(user.createdAt); // Should be approximately now
  console.log(user.createdAt === user.updatedAt); // true

  // Wait 1 second and then update the user
  setTimeout( function () {
    user.username = 'Symbol';
    user.save( function (err) {
      console.log(user.updatedAt); // Should be approximately createdAt + 1 second
      console.log(user.createdAt < user.updatedAt); // true
    });
  }, 1000);
});

Contributors

Based on the UseTimestamps plugin for mongoose-types by Brian Noguchi

License

MIT License


Author

Andy Burke

npm loves you