Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save danse/c63515ece4b11739e404 to your computer and use it in GitHub Desktop.

Select an option

Save danse/c63515ece4b11739e404 to your computer and use it in GitHub Desktop.

Revisions

  1. danse revised this gist Dec 16, 2014. 1 changed file with 19 additions and 20 deletions.
    39 changes: 19 additions & 20 deletions couchdb_delete_non_design_docs.js
    Original file line number Diff line number Diff line change
    @@ -1,24 +1,23 @@
    var cradle = require('cradle');

    var database = 'app';
    var connection = new cradle.Connection(
    'https://user:password@host',
    443
    );
    var db = connection.database('database')

    cradle.setup({
    host: '127.0.0.1',
    port: 5984,
    auth: { username: "YOUR_USERNAME", password: "YOUR_PASSWORD" }
    });

    var db = new(cradle.Connection)().database(database);

    /* Delete non-design documents in a database. */
    db.all(function(err, doc) {
    /* Loop through all documents. */
    for(var i = 0; i < doc.length; i++) {
    /* Don't delete design documents. */
    if(doc[i].id.indexOf("_design") == -1) {
    db.remove(doc[i].id, doc[i].value.rev, function(err, doc) {
    console.log(doc);
    });
    db.all({include_docs: true}, function(err, allDocs) {
    if (err) {
    console.log(err);
    } else {
    allDocs.forEach(function(doc) {
    if (doc._id) {
    if (doc._id.indexOf('__design') == -1) {
    db.remove(doc._id, doc._rev, console.log);
    }
    } else {
    console.log('doc: '+JSON.stringify(doc).slice(0, 100));
    }
    }
    });
    })
    }
    });
  2. @ryankirkman ryankirkman created this gist Mar 17, 2011.
    24 changes: 24 additions & 0 deletions couchdb_delete_non_design_docs.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,24 @@
    var cradle = require('cradle');

    var database = 'app';

    cradle.setup({
    host: '127.0.0.1',
    port: 5984,
    auth: { username: "YOUR_USERNAME", password: "YOUR_PASSWORD" }
    });

    var db = new(cradle.Connection)().database(database);

    /* Delete non-design documents in a database. */
    db.all(function(err, doc) {
    /* Loop through all documents. */
    for(var i = 0; i < doc.length; i++) {
    /* Don't delete design documents. */
    if(doc[i].id.indexOf("_design") == -1) {
    db.remove(doc[i].id, doc[i].value.rev, function(err, doc) {
    console.log(doc);
    });
    }
    }
    });