|
NAMECatalyst::View::TT::ControllerLocal - Catalyst TT View with template names relative to the ControllerSYNOPSISUse the helper to create a View class for yourscript/myapp_create.pl view TT TTControllerLocal This creates the MyApp::View::TT class. Forward to the View like you normally would#Meanwhile, maybe in a private end action if(!$c->res->body) { if($c->stash->{template}) { $c->forward('MyApp::View::TT'); } else { die("No output method!\n"); } } DESCRIPTIONCatalyst::View::TT::ControllerLocal is like a normal Catalyst TT View, but with template file names relative to the current Controller. So with a set of templates like:./root/edit.html ./root/add.html ./root/Frobniz/add.html and an action "add" in the Controller "MyApp::Controller::Frobniz", you set "$c->stash->{template}" to "add.html" in order for it to pick up the "./root/frobbiz/add.html" template. Setting the "$c->stash->{template}" from Controller "MyApp::Controller::Bogon" would instead pick the default template in "./root/add.html" (since there is no Bogon subdirectory under root). In addition, since there is no file "edit.html" except in the Frobniz directory, C::V::TT::ControllerLocal will default to looking for "edit.html" in ./root/ and ./root/base (or whatever you set MyApp->config->{INCLUDE_PATH} to). METHODSnewThe constructor for the TT view. Sets up the template provider, and reads the application config.processRender the template specified in "$c->stash->{template}" or "$c->request->match".The template file name is fetched from one of the Template's include_paths. The name of the current action's namespace is prepended to this list, so for the action "edit" in "MyApp::Controller::Frobniz", the prepended directory is "./root/frobniz". Example: If "$c->stash->{template}" = "edit.html" you can put a specific template in ./root/myaction/edit.html, or a general template in ./root/base/edit.html or ./root/edit.html. If the action is MyApp::Controller::MyAction, the specific template is used. If the action is MyApp::Controller::MyOtherAction, the ./root/base/edit.html is used. See also: Catalyst::View::TT::process. AUTHORJohan Lindstrom <johanl ÄT cpan.org>LICENSEThis library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.POD ERRORSHey! The above document had some coding errors, which are explained below:
Visit the GSP FreeBSD Man Page Interface. |