NAME Catalyst::View::Mason - Mason View Class SYNOPSIS # use the helper script/create.pl view Mason Mason # lib/MyApp/View/Mason.pm package MyApp::View::Mason; use base 'Catalyst::View::Mason'; __PACKAGE__->config(use_match => 0); 1; $c->forward('MyApp::View::Mason'); DESCRIPTION Want to use a Mason component in your views? No problem! Catalyst::View::Mason comes to the rescue. EXAMPLE From the Catalyst controller: $c->stash->{name} = 'Homer'; # Pass a scalar $c->stash->{extra_info} = { last_name => 'Simpson', children => [qw(Bart Lisa Maggie)] }; # A ref works too From the Mason template: <%args> $name $extra_info

Your name is <% $name %> <% $extra_info->{last_name} %>

Your children are:

METHODS new($c, \%config) process Renders the component specified in $c->stash->{template} or $c->request->match or $c->action (depending on the use_match setting) to $c->response->body. Note that the component name must be absolute, or is converted to absolute (i.e., a / is added to the beginning if it doesn't start with one). Mason global variables $base, $c, and $name are automatically set to the base, context, and name of the app, respectively. render($c, $component_path, \%args) Renders the given template and returns output, or a HTML::Mason::Exception object upon error. The template variables are set to %$args if $args is a hashref, or $c->stash otherwise. config This allows you to to pass additional settings to the HTML::Mason::Interp constructor or to set the options as below: "template_extension" This string is appended (if present) to "$c->action" when generating a template path. Example: "template_extension => '.html'" "use_match" Use "$c->request->match" instead of "$c->action" to determine which template to use if "$c->stash->{template}" isn't set. This option is deprecated and exists for backward compatibility only. Currently defaults to 1, to avoid breaking older code, but new code should always set this to 0. The default HTML::Mason::Interp config options are as follows: "comp_root" "$c->config->root" "data_dir" "File::Spec->tmpdir" "allow_globals" "qw/$c $name $base/" If you add additional allowed globals those will be appended to the list of default globals. SEE ALSO Catalyst, HTML::Mason, "Using Mason from a Standalone Script" in HTML::Mason::Admin AUTHORS Andres Kievsky "ank@cpan.org" Sebastian Riedel "sri@cpan.org" Marcus Ramberg Florian Ragwitz "rafl@debian.org" COPYRIGHT This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.