@loke/orm

2.0.0 • Public • Published

@loke/orm

This package is only used in some legacy systems at LOKE, and as such is deprecated.

Dependency updates and changes will be limited to security and features to transition away from the system.

Breaking Changes

  1. You must now import Connection from the module.

Before: const Connection = require("@loke/orm");

After: const { Connection } = require("@loke/orm");

  1. create and createConnection are gone. Please use Connection.

  2. $ operators are gone, as per underlying Sequelize update. You should import Op instead.

Before: myRepo.find({ age: {$gt: 18} })

After:

const { Op } = require("@loke/orm");
myRepo.find({ age: {[Op.gt]: 18} })
  1. You can still use $ operators by declaring them in the connection options using the field operatorsAliases. See sequelize documentation for more details.

  2. sequelize, pg and mysql2 are now peer dependencies. You must install them yourself.

Install

npm install @loke/orm

Example

const { Connection } = require('@loke/orm');
const db = new Connection('mysql://root@localhost/demo');
const petRepository = db.table('Pets', {
  name: { type: String, defaultValue: () => 'Untitled' },
  description: db.Text
});
const userRepository = db.table('Users', {
  firstName: db.String,
  lastName: db.String,
  pets: [petRepository]
});

userRepository.find({firstName: 'Testing'})
  .then(function (users) {
    users[0].pets[0].description = 'Hello World!';
    // Save changes:
    return userRepository.persist(users[0]);
  });

View Documentation.

Tests

npm test

Coverage

npm run coverage

Readme

Keywords

Package Sidebar

Install

npm i @loke/orm

Weekly Downloads

87

Version

2.0.0

License

MIT

Unpacked Size

73.2 kB

Total Files

43

Last publish

Collaborators

  • loke