rieluz
IMPORTANT: Rieluz is not recommended for production environment yet. This is a work in progress.
Installation
Install via npm
npm install rieluz
How to use
Configuration
orientdb: connections: default: server: host: '127.0.0.1' port: 2424 username: 'orientdbUser' password: 'orientdbPassword' servers: host: '127.0.0.1' port: 2425 database: name: 'databaseName' username: 'orientdbUser' password: 'orientdbPassword' type: 'graph' storage: 'plocal'
IMPORTANT Every connection configuration is similar to the OrientJS configuration schema.
Can be specify as many connection as needed. Every connection is identify by its name.
By every connection declared in configuration is set an instance of the GraphManager.
Connect the client
; rieluz ;
This is the way of boot connections to OrientDB database. If database is not created, Rieluz will create the database and the declared models schema.
Create a model schema
Let's create a person model
; const personSchema = ; 'Person' personSchema 'default';
For the schema validation was used validate node js package. Read more
The third parameter is the connection that model will use. If it is not specified rieluz will take 'default'
Supported data types in RIELUZ and its map in Javascript
Rieluz Type (same as OrientDB) | Javascript |
---|---|
decimal | number |
float | number |
integer | number |
double | number |
short | number |
date | object |
datetime | object |
string | string |
boolean | boolean |
IMPORTANT The properties type must be declared as one of the types above
Vertex Class
Save a node in the Graph by instantiating of the model
let jimmy = id: "1" name: "Jimmy" age: 21 ;if jimmy jimmy ; else console;
Delete a node
jimmy ;
Other way
Every model have a property collection that can be used.
Save a node in the Graph
let data = id: "1" name: "Jimmy" age: 21 ;Personcollection ;
Upsert a node
The node will be updated if it already exist in the database otherwise will be created
let data = id: "1" name: "Jimmy" age: 21 ;Personcollection ;
Link two nodes in the Graph
createEdge takes 4 arguments:
- label: The class of the edge
- from: RID of the FROM node
- to: RID of the TO node
- done: Error-based callback
Personcollection ;
Delete an edge
Personcollection ;
To remove all edges between one node and other, no matter its class, pass null or undefined as class parameter
Personcollection ;
Find a record
Personcollection ;
Raw query
Personcollection ;
Query Builder
Use qb in the same way that object db in OrientJS
let qb = Personcollection;
Issues
Please let me know about any bug or recommendation in here