On Sat, Dec 18, 2010 at 1:48 PM, Josh803316 <[email protected]> wrote: > The reason I ask is because of this, I have an update function that updates > the 'status' key of a document.......but when I send the request (command > line curl) I keep getting errors on the server return. > > curl -X PUT > http://localhost:5984/workers/_design/tasc/_update/status/94472998f519050f3a2271888d137ed7\?field=status\&value=RUNNING<http://localhost:5984/workers/_design/tasc/_update/status/94472998f519050f3a2271888d137ed7%5C?field=status%5C&value=RUNNING> > > {"error":"external_response_error","reason":"Invalid data from external > server: {<<\"status\">>,<<\"RUNNING\">>}"} > > Here is my update function......do I need to JSON Encode the returned object > message? > { > "status": "function(doc, req) { > var field = req.query.field; > var value = req.query.value; > doc[field] = value; > return[doc,{"status":value}]; > }", > }
Pretty sure its supposed to be "return doc;" > >> On Sat, Dec 18, 2010 at 12:40 PM, Josh803316 <[email protected]> wrote: >> >>> Oops I forgot to ask how I encode as well, is it JSON.encode? >>> >>> >>> On Mon, Dec 13, 2010 at 10:24 AM, Zachary Zolton < >>> [email protected]> wrote: >>> >>>> You can use the global JSON object for this: >>>> >>>> function(doc, req) { >>>> var active_test = JSON.parse(req.body); >>>> >>>> doc['active_test'] = active_test; >>>> return [doc, req.body]; >>>> } >>>> >>>> Cheers, >>>> Zach >>>> >>>> On Sat, Dec 11, 2010 at 1:06 PM, Josh803316 <[email protected]> >>>> wrote: >>>> > If I send a json string to my update handler as part of req.body what >>>> is the >>>> > best way to convert it to a JSON object? >>>> > >>>> > Do the CouchDb js libraries already include a built in JSON parser or >>>> do I >>>> > have to use eval? >>>> > >>>> > "active_test" : function(doc, req) { >>>> > var active_test = eval('(' + req.body + ')'); >>>> > >>>> > doc['active_test'] = active_test; >>>> > return [doc, req.body]; >>>> > } >>>> > >>>> >>> >>> >> >
