Hi James,

From my point of knowledge this is not possible.
I would also very appreciate such a functionality to achieve exactly the
same as you describe.
I think this would be useful for many use cases.

Does anybody knows more about this topic? Is this a planned feature?

Greetings
Johannes

Am Donnerstag, den 09.09.2010, 08:46 +0100 schrieb James Jackson:
> Hi Johannes,
> 
> Thank you - so from what I can see, it isn't actually possible in intercept 
> all document inserts and modify them server-side? The update handler 
> functionality appears to only be able to modify existing docs, or create a 
> new one, and even then has to be called with a special URL syntax.
> 
> What I would like to achieve (for implementation of a security policy) is to 
> be able to add some information from the userCtx object to every document on 
> an initial PUT / POST, without requiring the user to call something 
> explicitly different. While I could steam ahead and patch our version of 
> CouchDB to perform this, I'd rather not diverge from the trunk more than we 
> already have (with the addition of custom HTTP auth handlers).
> 
> Is there any way to accomplish this at present?
> 
> Regards,
> James.
> 
> On 9 Sep 2010, at 06:08, Johannes J. Schmidt wrote:
> 
> > Hi James,
> > 
> > Update handlers are not automatically executed on regular document
> > updates. Instead, you have to PUT your update to an URL like
> > 
> > $HOST/$DB/_design/update/_update/add_user
> > 
> > You will have to process every property manually inside the update
> > function.
> > 
> > Read more about update handlers in the wiki:
> > http://wiki.apache.org/couchdb/Document_Update_Handlers
> > 
> > Greetings
> > Johannes
> > Am Donnerstag, den 09.09.2010, 00:04 +0100 schrieb James Jackson:
> >> Hi,
> >> 
> >> I'm trying to implement a method to modify all documents before they are 
> >> written to the DB. From my poking around in various tickets, I believe the 
> >> updates entry in a design document is what I'm after (I'm running 1.0.1).
> >> 
> >> I have inserted the following design document into my database:
> >> 
> >> {
> >>   "_id":"_design/update",
> >>   "_rev":"1-8800f3bdde13e5bcf6738635f0265b6d",
> >>   "language":"javascript",
> >>   "updates" : {
> >>      "add_user":"function(doc, req){doc.newauth = req.userCtx; return 
> >> [doc, \"ok\"];}"
> >>   }
> >> }
> >> 
> >> However, this does not appear to get run when putting a document to the 
> >> database (nothing in the debug log but the usual). Is this functionality 
> >> supported? Am I doing something funny? All help appreciated!
> >> 
> >> Regards,
> >> James.
> > 
> > -- 
> > Netzmerk GbR
> > Johannes J. Schmidt
> > 
> > http://netzmerk.com
> > 0157 79 76 20 30
> > 
> > Am Vierstückenpfuhl 3a
> > 14167 Berlin
> 

-- 
Netzmerk GbR
Johannes J. Schmidt

http://netzmerk.com
0157 79 76 20 30

Am Vierstückenpfuhl 3a
14167 Berlin

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

Reply via email to