Skip to content

vpavel04/db-repository-mongo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Db-Repository-Mongo

Db-Repository-Mongo is a mongoDb implementation for Db-Repository in TypeScript

How to use it

npm install --save 'db-repository';
npm install --save 'db-repository-mongo';

Sample code

// store mongoDbUri in MONGODB_PATH env variable.
process.env.MONGODB_PATH = 'mongoDb uri';

import * as db from 'db-repository';
import * as mongoDbRepo from 'db-repository-mongo';

db.use(mongoDbRepo.init());

// define new type that works with IRepository
interface DbTest extends db.IDbObject {
    test: string;
}

const testFn = async () => {

  const dbObject: DbTest = <DbTest>{
      test: 'text1'
  }

  // create repository
  const testRepo: db.IRepository<DbTest> = db.repo<DbTest>({ table: 'test' });
  
  // add object
  await testRepo.add(dbObject);
  
  // query all
  const allObjects = await testRepo.list(db.query().all());

  // query by id
  const objectById = await testRepo.list(db.query().byId(dbObject._id));
  
  // update object
  dbObject.test = 'text2';
  const nUpdated = await testRepo.update(dbObject);
  
  // delete objects
  const nDeleted = await testRepo.remove(db.query().all());
};

testFn();

About

mongoDB implementation for db-repository

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published