Search code examples
node.jscouchdbcouchdb-nano

How do create couchdb design docs with Nano in Node.js?


Looking through the README it doesn't look there is a way to create design docs with Nano? What are others doing for this?


Solution

  • Simply use the db.insert function.

    db.insert(design_doc, '_design/design_doc_name', callback);
    

    Here's a more complete example (from tests/view/query):

      db.insert(
      { "views": 
        { "by_name_and_city": 
          { "map": function(doc) { emit([doc.name, doc.city], doc._id); } } 
        }
      }, '_design/people', function (error, response) {
        console.log("yay");
      });
    

    If you are interested in learning some more check this sample or go on and read the CouchDB Guide