evheniy / yeps-mongoose

YEPS Mongoose connector

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YEPS Mongoose

YEPS Promise based Mongoose client

NPM

npm version Build Status Coverage Status Linux Build

Dependency Status devDependency Status NSP Status

License GitHub stars GitHub forks GitHub issues Twitter

How to install

npm i -S yeps-mongoose

How to use

Config

config/default.json

{
  "mongoose": {
    "uri": "mongodb://localhost/test",
    "parameters": {
      "useMongoClient": true
    }
  }
}

Middleware

const App = require('yeps');

const error = require('yeps-error');
const logger = require('yeps-logger');

const server = require('yeps-server');

const app = new App();

app.all([
    error(),
    logger(),
]);

app.then(async (ctx) => {
  const { Schema } = ctx.mongoose;
    
  const UserSchema = new Schema({
    name: {
      type: String,
      required: [true, 'Name is required.'],
    },
  });
    
  const User = mongoose.model('user', UserSchema);
      
  const test = new User({ name: 'Test' });
    
  await test.save();
    
  const users = await User.find({ name: 'Test' });
    
  const user = await User.findOne({ _id: test._id });
    
  await test.remove();
});

server.createHttpServer(app);

Module

const mongoose = require('yeps-mongoose/mongoose');

const { Schema } = mongoose;

const UserSchema = new Schema({
  name: {
    type: String,
    required: [true, 'Name is required.'],
  },
});
    
const User = mongoose.model('user', UserSchema);

module.exports = User;

Dependencies:

  • Mongoose - elegant mongodb object modeling for node.js
  • config - node.js config

About

YEPS Mongoose connector

License:MIT License


Languages

Language:JavaScript 100.0%