Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tarquas/mongoose-hook-createdmodified

Mongoose plugin, adding `createdAt` and `modifiedAt` timestamp fields to document. `modifiedAt` is changed on any type of update.
https://github.com/tarquas/mongoose-hook-createdmodified

Last synced: about 2 months ago
JSON representation

Mongoose plugin, adding `createdAt` and `modifiedAt` timestamp fields to document. `modifiedAt` is changed on any type of update.

Awesome Lists containing this project

README

        

# mongoose-hook-createdmodified
Mongoose plugin, adding `createdAt` and `modifiedAt` timestamp fields to document. `modifiedAt` is changed on any type of update.

# Installation
```shell
git clone [email protected]:tarquas/mongoose-hook-createdmodified.git mongoose-hook-createdmodified
```

# Package
```js
{
"mongoose-hook-createdmodified": "0.1.4"
}
```

# Usage

Example: enable 'createdAt' and 'modifiedAt' fields on a schema:

```js
var
mongoose = require('mongoose'),
createdModifiedPlugin = require('mongoose-hook-createdmodified'),
PersonSchema;

PersonSchema = {
name: String,
email: String
};

PersonSchema.plugin(createdModifiedPlugin, {mongoose: mongoose});

mongoose.model('Person', PersonSchema);
```

# Notes

* This plugin must be provided with an exact instance of `mongoose`, where the processing models expected to be processed, in `opts` parameter.

* This plugin updates modification time of the document on its any update operation. It's based on `mongoose-hook` plugin, so every time, any of `insert`, `update`, or `findAndModify` database API wrapper is called, the creation/modification time is updated.