Try running 'js' from the console - it's an interactive javascript interpreter that makes figuring these things out much easier.

Try:
function(doc) {
        doc.hash = md5(doc.passwd);
        emit(null, doc);
}

On 13/04/2010 3:42 PM, Cesar Delgado wrote:
I'm playing around with CouchDB and am kinda curious if I can add a new member 
to an object in the map (and/or reduce I guess as well) part.

Ok, so an example is I have an object with a name and a plain-text password:
{"name":"cesar", "passwd":"insecure"}

What I would like to do is run a map function on this that computes the md5 and 
then inserts it into the object. I know it's horrible practice and I know it's 
wrong and I know this is bad.  It's an example so please don't flame.

Right now all I've been able to do is return the value as a value and the 
doc._id as the key.

function(doc) {
  var hash = md5(doc.passwd) ;
  emit (doc._id,hash) ;

}

I'd love to just have a new JSON oabject as the value and no key.

function(doc) {
  var hash = md5(doc.passwd) ;
   doc.insertmefunct("hash",hash) ;
   emit(null,doc) ;
}

would produce:

{"name":"cesar", "passwd":"insecure","hash":"f166786326d565962e8523266c0e1d57"}

Thanks for the help,

-Cesar



Reply via email to