Catalyst::Helper::View::TTSite - Helper for TT view which builds a skeleton web site
# use the helper to create the view module and templates
$ script/myapp_create.pl view HTML TTSite
# add something like the following to your main application module
sub message : Global { my ( $self, $c ) = @_; $c->stash->{template} = 'message.tt2'; $c->stash->{message} ||= $c->req->param('message') || 'No message'; } sub default : Private { my ( $self, $c ) = @_; $c->stash->{template} = 'welcome.tt2'; } sub end : Private { # Or use Catalyst::Action::RenderView my ( $self, $c ) = @_; $c->forward( $c->view('HTML') ); }
This helper module creates a TT View module. It goes further than Catalyst::Helper::View::TT in that it additionally creates a simple set of templates to get you started with your web site presentation.
It creates the templates in root/ directory underneath your main project directory. In here two further subdirectories are created: root/src which contains the main page templates, and root/lib containing a library of other template components (header, footer, etc.) that the page templates use.
The view module that the helper creates is automatically configured to locate these templates.
To render a template the following process is applied:
The configuration template root/lib/config/main is rendered. This is controlled by the PRE_PROCESS configuration variable set in the controller generated by Catalyst::Helper::View::TTsite. Additionally, templates referenced by the PROCESS directive will then be rendered. By default the following additional templates are set: root/lib/config/col, which defines color names and RGB their RGB values and /root/lib/config/url, which defines site wide variables available to templates.
PRE_PROCESS
PROCESS
Next, the template defined by the WRAPPER config variable is called. The default wrapper template is located in root/lib/site/wrapper. The wrapper template passes files with .css/.js/.txt extensions through as text OR processes the templates defined after the WRAPPER directive: site/html and site/layout.
WRAPPER
.css/.js/.txt
site/html
site/layout
Based on the default value of the WRAPPER directive in root/lib/site/wrapper, the following templates are processed in order:
root/src/your_template.tt2
root/lib/site/footer
root/lib/site/header
root/lib/site/layout
root/lib/site/html
Finally, the rendered content is returned to the browser.
Generates the component class.
Generates the templates.
Catalyst, Catalyst::View::TT, Catalyst::Helper, Catalyst::Helper::View::TT
Andy Wardley <abw@cpan.org>
This library is free software. You can redistribute it and/or modify it under the same terms as perl itself.
[% class %] - Catalyst TTSite View
See "[% app %]"
Catalyst TTSite View.
[% author %]
This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.
To install Catalyst::View::TT, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Catalyst::View::TT
CPAN shell
perl -MCPAN -e shell install Catalyst::View::TT
For more information on module installation, please visit the detailed CPAN module installation guide.