On Apr 21, 2009, at 10:52 AM, Chris Anderson wrote:
...

This seems like an awful lot of special case weirdness, and there are
probably more edge cases than you've identified so far. And this only
addresses attachments -- there were some interesting ideas posed on the list some time back about how to do unobtrusive form handling, but there were
still were some oddities, particularly around strings vs. numbers and
deeply-nested objects.

I know this is sacrilege, but wouldn't this be best handled by action
servers?

This is the way to go. Not action servers exactly, but an update
handler, for JavaScript which can translate a Req to JSON for PUT.
Patches welcome or I'll get to it eventually.

Of course, you could always bury a form handler in a wsgi or rack
app or whatever (even a jack app in js) as an _external, but obviously that's not very portable. Baking action servers into couch is the only sane way to solve this problem for something like couchapps (a jsonp service is out of the question for write ops). And it shouldn't be any trouble with
sharding.

So maybe action server is the wrong word, and I know it could totally get abused (hell, I *know *I would abuse it), but wouldn't it be great if form handling could be embedded in design docs with all the other app logic?




Is there an open bug report for "action server" or "update handler" or any previous discussions. I searched JIRA and didn't see it, but the terms were generic enough that they matched many entries.

I was trying to avoid specifying any implementation details, just the requirements to fill a big functionality hole for pure CouchApps that could not be handled browser side. Would be great if it could be handled by something generic.

Eventually I will need to address this either by trying my first attempt to hack Erlang or by adding an intermediary layer and abandon being a CouchApp. Would appreciate any advice if I need roll my own solution. Not urgent at the moment, but eventually my client will want to see it and I'll be forced to find a solution.

Reply via email to