[Catalyst] unbuffered output via multiple templates

Matt S Trout dbix-class at trout.me.uk
Wed Sep 5 18:55:42 GMT 2007


On Thu, Aug 30, 2007 at 07:22:38PM -0600, Todd Harris wrote:
> Hi all -
> 
> Quick introduction:  I'm new to Catalys, but I've been reading the
> mailing list online for some time.  I finally have a suitable project
> and have just started working on it.  The documentation on list so far
> have been a great help.
> 
> My question:  I'd like to unbuffer output a la $|++.  I thought one
> approach might be to have a series of templates per page, rendering
> each sequentially, delivering each to the client in turn.
> 
> So far I've come across two possible solutions: 1. SubRequest and 2.
> View::TT->render.
> 
> But it seems that trapping the output of either and writing to STDOUT
> closes the request, such that only the first template is rendered and
> sent to the browser.

$c->finalize_headers;

foreach my $argset (@argsets) {
  $c->write($c->view($view_name)->render($template, $argset));
}

or code to that effect.

-- 
      Matt S Trout       Need help with your Catalyst or DBIx::Class project?
   Technical Director    Want a managed development or deployment platform?
 Shadowcat Systems Ltd.  Contact mst (at) shadowcatsystems.co.uk for a quote
http://chainsawblues.vox.com/                    http://www.shadowcat.co.uk/ 



More information about the Catalyst mailing list