ORM framework for Node js based on Ecmascript 6 and Typescript.
npm install es-entityes-entity
===================
ORM framework for Node js based on Ecmascript 6 and Typescript.
Nitin Bansal https://github.com/nitinbansal1989
$ npm install es-entity
``js`
const es = require("es-entity");
Note: The class members are camel cased from the snake case database columns. Annotation for custom column name will be implemented in future.
`js`
class Employee {
constructor() {
this.id = new es.Number();
this.name = new es.String();
this.description = new es.String();
}
}
`js`
var config = new es.ConnectionConfig();
config.handler = "mysql";
config.hostname = "localhost";
config.name = "mysql";
config.username = "root";
config.password = "application";
config.database = "test";
`js`
const Employee_1 = require("./Employee");
class EmpContext extends es.Context {
constructor(config, entityPath) {
super(config, entityPath);
this.employees = new es.DBSet(Employee_1.default);
this.init();
}
}
Provide the database config object and mapping folder object to the context object to bind.
`js`
const EmpContext_1 = require("./modal/EmpContext");
var context = new EmpContext_1.default(config);
`js
let p = context.employees.where((a) => {
return (a.id.lt(q)).or(a.id.eq(2));
}).list();
p.then((v) => {
for (var i = 0; i < v.length; i++) {
var j = v[i];
console.log("id: " + j.id + ", name: " + j.name + ", desc: " + j.description);
}
});
`
js
let p = context.employees.get(1);p.then((v) => {
console.log("id: " + v.id + ", name: " + v.name + ", desc: " + v.description);
});
`$3
`js
v.description.set("test update 2");
let p = context.employees.update(v);
p.then((v) => {
console.log("id: " + v.id + ", name: " + v.name + ", desc: " + v.description);
console.log("updated");
});
`$3
`js
let a = context.employees.getEntity();
a.name.set("name 2");
a.description.set("desc insert 2");
let p = context.employees.insert(a);
p.then((v) => {
console.log("id: " + v.id + ", name: " + v.name + ", desc: " + v.description);
console.log("inserted");
});
`$3
`js
let p = context.employees.delete(v);
p.then(() => {
console.log("deleted");
});
``Note: Currently it is very basic and only supports mysql. Please provide suggestions if any.