its been awhile since i studied the Erlang side of this, but IIRC, once getRow() returns, the response has started which means that you can't send a redirect. To get it working proper then would require a bit of a patch to wait on starting the response until the first output from the _list function.
Paul Davis On Sat, Sep 26, 2009 at 11:39 PM, Zachary Zolton <[email protected]> wrote: > Hey guys, > > I need to find a way to do a redirect from a _list function after > calling the getRow() function. After looking at render.js for a while > I can't see how to solve this without at least adding to the API. > > Basically, I think that calling getRow() shouldn't cause the view > server to send the headers (or awaiting chunks) unless we've already > called send() or something like that. That way, we can return from the > _list function after iterating to the first row that should redirect. > (I'm not sure if this is a breaking change from the current semantics, > however...) > > Would greatly appreciate a little guidance on how to attack this! > > > Cheers, > > Zach > > > ---------- Forwarded message ---------- > From: Chris Anderson <[email protected]> > Date: Fri, Sep 25, 2009 at 2:15 PM > Subject: Re: Redirect from _list function? > To: Zachary Zolton <[email protected]> > > > On Fri, Sep 25, 2009 at 11:01 AM, Zachary Zolton > <[email protected]> wrote: >> So, now I find that using the send() function to perform the redirect >> doesn't work after the first time I call getRow(). Upon checking out >> render.js, I see that the getRow() function calls sendStart()—which I >> haven't quite yet figured out—but I can tell there's something fishy >> going on there... >> >> Would I be correct to assume that the headers are already set after >> calling getRow()? > > Yes... The headers are sent when the first getRow is called. Fixing > this is definitely something I'd support. > >> >> On Fri, Sep 25, 2009 at 12:11 PM, Chris Anderson <[email protected]> wrote: >>> On Fri, Sep 25, 2009 at 8:40 AM, Zachary Zolton >>> <[email protected]> wrote: >>>> Okay, I've update this section to differentiate between the 0.9 and >>>> 0.10 _list API: >>>> >>>> http://wiki.apache.org/couchdb/Formatting_with_Show_and_List#Sending_a_Redirect >>>> >>>> Now, I'm feeling that the Other Fun Things section could use a bit of >>>> love. Hmm... :^) >>> >>> Thanks for keeping the wiki in mind! >>> >>>> >>>> On Fri, Sep 25, 2009 at 10:19 AM, Zachary Zolton >>>> <[email protected]> wrote: >>>>> Sweet! I'll try to amend the wiki page for the _list API... >>>>> >>>>> On Fri, Sep 25, 2009 at 10:17 AM, Jason Davies <[email protected]> >>>>> wrote: >>>>>> On 25 Sep 2009, at 16:16, Zachary Zolton wrote: >>>>>> >>>>>>> Thanks for all the help, guys! Shall I delete that JIRA issue? >>>>>> >>>>>> >>>>>> I already did :-) >>>>>> >>>>>> -- >>>>>> Jason Davies >>>>>> >>>>>> www.jasondavies.com >>>>>> >>>>>> >>>>> >>>> >>> >>> >>> >>> -- >>> Chris Anderson >>> http://jchrisa.net >>> http://couch.io >>> >> > > > > -- > Chris Anderson > http://jchrisa.net > http://couch.io >
