1.1.2 • Published 9 years ago

couchdbjs v1.1.2

Weekly downloads
3
License
MIT
Repository
github
Last release
9 years ago

couchdbjs

couchdbjs is node.js client for couchdb.

NPM

npm npm npm npm Dependencies

Install

$ npm install couchdbjs --save

Create a couchdbjs object

const Couchdbjs = require('couchdbjs');
const db = new Couchdbjs(dbname, options, callback);

Note : Here DB is the object of the class couchdbjs.

Here options is an optional js object containing the configuration. This is the default configuration.

{
    protocol : 'http:',
    hostname: 'localhost',
    port: 5984
}

dbname is the name of the database.

Generate a new uuid

Couchdbjs.getNewId(options, cb);

Here options is optional configuration object. This is the default configuration.

{
    protocol : 'http:',
    hostname : 'localhost',
    port: 5984
    count : 1
}

cb is reqired callback function with two parameters err and data. To avoid writing configurations for protocol, hostname and port again the function getConfig can be called on existing database object.

db.getConfig({count : 1});

returns

{
    protocol : 'http:',
    hostname : 'localhost',
    port: 5984
    count : 1
}

Complete Example :

Couchdbjs.getNewId(db.getConfig({count : 1}, function(err, data) {
    if (err) console.error(err);
    else console.log(data[0]); // data is array of uuids
}));

Create a new database

// not recommended
const db = new Couchdbjs('dbname', options);

This creates a database when a database with name dbname doesn't exist. Database can also be created using Couchdbjs.createDB function.

// recommended
Couchdbjs.createDB({
    protocol: 'http:',
    hostname: 'localhost',
    port: 5984,
    db: 'dbanme'
}, function(err, data)=>{
    if (err) console.error(err);
    else console.log(data);
});

Delete a database

Database can be deleted using function Couchdbjs.deleteDB similar to Couchdbjs.createDB.

Couchdbjs.deleteDB({
    protocol: 'http:',
    hostname: 'localhost',
    port: 5984,
    db: 'dbanme'
}, function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

List all documents in a database

db.getAllDocs(function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

Create a new document

db.createDoc(id, document, cb);

id is the id of the document to be used. document is the object to be stored in the document. cb is the callback function with parameters err and data. Example

db.createDoc('id_doc', {a:1, b:2, c:[5, 'k']}, function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

Get document

db.getDoc(id, cb);

id is the id of the document. cb is the callback function with parameters err and data. Example

db.getDoc('id_doc', function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

Update a document

db.updateDoc(id, doc, cb);

id, doc, cb are id of document to be updated, document object with filed to be updated and callback function with parameters err and data respectively. Example Suppose this a document already present

{
    'id': 'id_doc',
    '_rev': '1-1357',
    'a': 1,
    'b': 'asd'
}

If the following function is used to update the document

db.upadteDoc('id_doc', {b: 'cs', c: 5}, function(err, data) {});

then the final document will be

{
    'id': 'id_doc',
    '_rev': '2-2468',
    'a': 1,
    'b': 'cs',
    'c': 5
}

After that if the following function is used to update the document

db.upadteDoc('id_doc', {b: 'cse', a: undefined}, function(err, data) {});

then the final document will be

{
    'id': 'id_doc',
    '_rev': '3-3579',
    'b': 'cse',
    'c': 5
}

To update whole document by overwriting the existing one use

db.createDoc(id, doc, cb);

with _rev field in the doc document.

Delete a document

db.deleteDoc(id, function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

Attach files to a document

db.attachFileToDoc(id, rev, file, cb);

Example

db.attachFileToDoc('id_doc', '3-3579', {
    name: 'pic.jpg',
    path: '/home/user/image.jpg'
    mimetype: 'image/jpeg'
}, function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});

Here the file gets uploaded to http://localhost:5984/db_name/id_doc/pic.jpg.

Delete attachment from document

db.deleteAttachment(id, rev, attachmentName, cb);

Example

db.attachFileToDoc('id_doc', '4-1579', 'pic.jpg', function(err, data) {
    if (err) console.error(err);
    else console.log(data);
});
1.1.2

9 years ago

1.1.1

9 years ago

1.1.0

9 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago

0.2.0

10 years ago

0.1.0

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago