mongoose-checkit

0.1.3 • Public • Published

mongoose-checkit

Build Status Dependency Status devDependency Status

A Checkit plugin for Mongoose

Installation

npm install --save mongoose-checkit

Usage

var User, checkit, mongoose, userSchema;
 
mongoose = require('mongoose');
checkit = require('mongoose-checkit');
mongoose.connect('mongodb://localhost/mongoose-checkit');
 
userSchema = new mongoose.Schema({
  username: {
    type: String,
    checkit: ['required', 'alphaDash']
  },
  email: {
    type: String,
    checkit: ['required', 'email']
  }
});
 
userSchema.plugin(checkit);
 
User = mongoose.model('User', userSchema);

Advanced Usage

var Checkit, User, checkit, mongoose, userSchema;
 
Checkit = require('checkit');
mongoose = require('mongoose');
checkit = require('mongoose-checkit');
mongoose.connect('mongodb://localhost/mongoose-checkit');
 
Checkit.Validators.unused = function(value, table, column) {
  var attrs;
  attrs = {};
  attrs[column] = value;
  return mongoose.model(table).find(attrs).limit(1).count().exec().then(function(count) {
    if (count) {
      throw new Error("The " + column + " field is already in use.");
    }
  });
};
 
userSchema = new mongoose.Schema({
  username: {
    type: String,
    unique: true,
    checkit: ['required', 'alphaDash', 'unused:User:username']
  },
  email: {
    type: String,
    unique: true,
    checkit: ['required', 'email', 'unused:User:email']
  }
});
 
userSchema.plugin(checkit, Checkit);
 
User = mongoose.model('User', userSchema);

Package Sidebar

Install

npm i mongoose-checkit

Weekly Downloads

2

Version

0.1.3

License

MIT

Last publish

Collaborators

  • keifukuda