Socket
Socket
Sign inDemoInstall

jrfdb

Package Overview
Dependencies
17
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    jrfdb

async/await odm for Node.js.


Version published
Weekly downloads
0
Maintainers
1
Created
Weekly downloads
 

Readme

Source

JRFDB


jrfdb

Installation

$ npm i jrfdb --save

Это async/await mongoDB odm для Nodejs. Состоит из модели и схем.

jrfdb - Cодержит схемы.

scheme - Схема содержит структуру коллекции mongoDB. Коллекции схем могут принадлежать разным базам, на разных серверах.

CRUD - При добавлении и редактировании документ проверяется на соответствие схеме.

При получении документа, вместо dbref ссылки подставляется документ.

При удалении, проверяется есть ли ссылки на данный документ, если есть, то документ не удаляется.

hooks - В каждой схеме можно установить хуки до и после CRUD операции.

Usage

const jrfdb = require('jrfdb');

// ----------- SCHEMES -----------

let typeBodys = {
    name: 'typeBodys',
    fields: {
        name: {
            description: 'Name',
            type: 'string',
            unique: true
        }
    }
};

let typeBags = {
    name: 'typeBags',
    fields: {
        name: {
            description: 'Name',
            type: 'string',
            unique: true,
            min: 3,
            max: 20
        }
    }
};

// ----------- INIT DB -----------

async function initDB() {

    await jrfdb.addScheme(typeBodys);
    await jrfdb.addScheme(typeBags);

    let scheme = await jrfdb.getScheme('typeBags');
    scheme.setConnection({db: 'jrfThingsTests'});

    await jrfdb.connect();

}

// ----------- ADD DOCS -----------

async function createBody() {

    let scheme = await jrfdb.getScheme('typeBodys');

    let obj = {
        docs: {name: 'coupe', _id: '5b706ac8453a393a68c4f943'}
    };

    let res = await scheme.add(obj);

}

async function createFiveBags(key) {

    let scheme = await jrfdb.getScheme('typeBags');

    let obj = {
        docs: [{name: 'suitcase'}, {name: 'handbag'}, {name: 'package'},
            {name: 'bag'}, {name: 'sack'}]
    };

    let res = await scheme.add(obj);

}

jrfdb

  • Connection
  • Schemes

scheme

Example

Simplechat is an example of using packages of jrfdb and jrfws (api websockets).

chat

Keywords

FAQs

Last updated on 21 Dec 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc