mongoose-createdat-updatedat
Version:
A mongoose plugin that adds createdAt and updatedAt fields to subscribed models in order to avoid redundancy
63 lines (45 loc) • 1.42 kB
Markdown
# Mongoose-createdAt-updatedAt
A mongoose plugin that adds createdAt and updatedAt fields to subscribed models in order to avoid redundancy.
Now supporting query-based updates like update() or findOneAndUpdate().
### Install via npm:
```bash
$> npm install mongoose-createdat-updatedat --save
```
### Usage:
```js
var plugin = require('mongoose-createdat-updatedat');
var User = new Schema({ ... });
User.plugin(plugin);
```
Optionally, you can pass an options object to set the name of the fields, or to disable certain fields.
Another example:
```js
var plugin = require('mongoose-createdat-updatedat');
var User = new Schema({ ... });
var options = {
createdAt: 'created_at',
updatedAt: null
}
User.plugin(plugin, options);
```
Here, the createdAt field will be named `created_at`, and the updatedAt field will be disabled.
### Options:
##### createdAt
Type: `String`
Default: `createdAt`
Name of the createdAt field. Set to null to disable the field
##### updatedAt
Type: `String`
Default: `updatedAt`
Name of the updatedAt field. Set to null to disable the field
### Test:
```bash
$> npm test
$>
CreatedAt and UpdatedAt support
✓ should has "James" as firstname
✓ should save user without error (237ms)
✓ should createdAt and updatedAt have equal values
✓ should update user lastname to "Heng" without error
✓ updatedAt should be more recent than createdAt
```