[Catalyst-commits] r11797 -
Catalyst-View-TT/branches/render_die/lib/Catalyst/View
osfameron at dev.catalyst.perl.org
osfameron at dev.catalyst.perl.org
Wed Nov 11 10:58:25 GMT 2009
Author: osfameron
Date: 2009-11-11 10:58:24 +0000 (Wed, 11 Nov 2009)
New Revision: 11797
Modified:
Catalyst-View-TT/branches/render_die/lib/Catalyst/View/TT.pm
Log:
Clarify docs for 'sub end' to promote RenderView
(Previously, the docs suggested doing something that would break
$c->res->redirect)
Modified: Catalyst-View-TT/branches/render_die/lib/Catalyst/View/TT.pm
===================================================================
--- Catalyst-View-TT/branches/render_die/lib/Catalyst/View/TT.pm 2009-11-11 00:37:48 UTC (rev 11796)
+++ Catalyst-View-TT/branches/render_die/lib/Catalyst/View/TT.pm 2009-11-11 10:58:24 UTC (rev 11797)
@@ -300,6 +300,38 @@
$c->forward( $c->view('TT') );
}
+But if you are using the standard auto-generated end action, you don't even need
+to do this!
+
+ # in MyApp::Controller::Root
+ sub end : ActionClass('RenderView') {} # no need to change this line
+
+ # in MyApp.pm
+ __PACKAGE__->config(
+ ...
+ default_view => 'TT',
+ );
+
+This will Just Work. And it has the advantages that:
+
+=over 4
+
+=item *
+
+If you want to use a different view for a given request, just set
+<< $c->stash->{current_view} >>. (See L<Catalyst>'s C<< $c->view >> method
+for details.
+
+=item *
+
+<< $c->res->redirect >> is handled by default. If you just forward to
+C<View::TT> in your C<end> routine, you could break this by sending additional
+content.
+
+=back
+
+See L<Catalyst::Action::RenderView> for more details.
+
=head2 CONFIGURATION
There are a three different ways to configure your view class. The
More information about the Catalyst-commits
mailing list