Mongo
DESCRIPTION
General
Installation
npm install eden-mongo
Usage
var mongo = require('eden-mongo');
var database = mongo('127.0.0.1', 27017, 'eden')
Methods
collection
eden/mongo/collection collection();
Returns collection
Parameters
Returns
eden/mongo/collection
Example
Code
var collection = database.collection()
.setName('User 5')
.setSlug('user-5');
collection[0].email = 'user5@eden.com';
collection[1].active = true;
collection.setProfile({ facebook: 123 });
collection[1].name;
collection[0].slug;
collection[0].email;
collection[1].active;
collection[0].profile.facebook;
Outputs
'User 5'
'user-5'
'user5@eden.com'
true
123
connect
this connect(Function);
Connects to the database
Parameters
- function - callback
Returns
this
Example
Code
var connect = database.connect(function(error, affected, meta);
connect;
Outputs
('127.0.0.1', 27017, 'eden', null)
disconnect
this disconnect();
Disconnects from the database
Parameters
Returns
this
Example
Code
database.disconnect();
Outputs
RESULTS
getConnection
connection resource getConnection();
Returns the connection object if no connection has been made it will attempt to make it
Parameters
Returns
connection resource
Example
Code
var database = mongo('127.0.0.1', 27017, 'eden');
database.getConnection();
Outputs
('127.0.0.1', 27017, 'eden', null)
getRow
this getRow(String, String, String, Function);
Returns a 1 row result given the column name and the value
Parameters
-
string - collection
-
string - name
-
string - value
-
function - callback
Returns
this
Example
Code
database.getRow('eden_user', 'name', 'User 3', function(error, row));
row;
Outputs
null
insertRow
this insertRow(String, Object, Function);
Inserts data into a table and returns the ID
Parameters
-
string - collection
-
object - settings
-
function - callback
Returns
this
Example
Code
database.insertRow('eden_user' {
name: 'User 3',
slug: 'user-3',
email: 'user@eden.com',
active: true,
profile: {
facebook: 345,
twitter: 543 },
created: new Date(),
updated: new Date()
}, function(error, rows));
rows[0].name;
rows[0].slug;
row[0].active;
Outputs
'User 3'
'user-3'
true
document
eden/mongo/document document();
Returns a blank mongo document
Parameters
Returns
eden/mongo/document
Example
Code
var document = database.document()
.setName('User 6')
.setSlug('user-6')
document.email = 'user6@eden.com';
document.active = true;
document.setProfile({ facebook: 123 });
document.name;
document.slug;
document.email;
document.active;
document.profile.facebook;
Outputs
'User 6'
'user-6'
'user6@eden.com'
true
123
removeRows
this removeRows(String, String|object, Function);
Removes rows that match a filter
Parameters
-
string - table
-
string|object - filter
-
function - callback
Returns
this
Example
Code
database.removeRows('eden_user', "(profile.linkedin = 222345 AND slug = 'user-3') "
+ "OR (name = 'User 4' AND slug = 'user4@eden.com') OR active = true",
function(error, affected, meta));
meta.ok;
Outputs
true
search
eden/mongo/search search();
Returns a search object
Parameters
Returns
eden/mongo/search
Example
Code
database
.search('eden_user')
.setColumns('name', 'slug', 'email', 'active', 'created')
.filterByEmail('user1@eden.com')
.sortByCreated('DESC')
.getRow(function(error, row));
row.email;
Outputs
'user1@eden.com'
updateRows
this updateRows(String, Object, String|object, Function);
Updates rows that match a filter given the update settings
Parameters
-
string - table
-
object - setting
-
string|object - filter
-
function - callback
Returns
this
Example
Code
database.updateRows('eden_user', {
name: 'User 4',
slug: 'User 4',
email: 'user4@eden.com',
'profile.google': 45678,
active: false,
updated: new Date()
}, "name = 'User 3 AND slug = 'user-3'", function(error, affected, meta));
meta.ok;
database.updateRows('eden_user', {
name: 'User 3',
slug: 'user-3',
email: 'user3@eden.com',
'profile.linkedin': 222345,
active: true,
updated: new Date()
}, {name: 'User 2', slug: 'user-2'}, function(error, affected, meta));
meta.ok;
Outputs
true
true