Search code examples
couchdbcouchdb-futon

couchdb , procedure to add a CommonJS modules (show list function)


What is the exact procudure to add a CommonJs module on couchdb ?

I've read tutorials like:

https://caolan.org/posts/commonjs_modules_in_couchdb.html

from official doc:

http://docs.couchdb.org/en/1.6.1/query-server/javascript.html#commonjs-modules

The CommonJS module can be added to a design document, like so:

{
   "views": {
      "lib": {
         "security": "function user_context(userctx, secobj) { ... }"
      }
   },
   "validate_doc_update": "function(newdoc, olddoc, userctx, secobj) {
      user = require('lib/security').user(userctx, secobj);
      return user.is_admin();
   }"
   "_id": "_design/test"
}

but where I copy or paste that code? must I save to the file and add it with curl ? On fauxton i don'see where.


Solution

  • Managing CouchDB design documents is usually best accomplished via a tool like couchapp. It allows you to package up a directory of files and outputs a CouchDB design document.

    You can manually edit that JSON in the futon/fauxton editor, but it's a pain and there are other tools out there depending on your toolchain. An external tool like this also aids in deployment, particularly across different environments.