Catalyst::View::Mason2(3)

NAME
Catalyst::View::Mason2 - Mason 2.x view class

VERSION
version 0.03

SYNOPSIS
    # use the helper
    script/create.pl view Mason2 Mason2

    # lib/MyApp/View/Mason2.pm
    package MyApp::View::Mason2;
    use base 'Catalyst::View::Mason2';
    __PACKAGE__->config(
        # insert Mason parameters here
    );

    1;

    # in a controller
    package MyApp::Controller::Foo;
    sub bar : Local {
        ...
        $c->stash->{name} = 'Homer';
        $c->stash->{template} = 'foo/bar';   # .mc is automatically added
    }

    # in root/comps/foo/bar.mc
    <%args>
    $.name
    </%args>

    Hello <% $.name %>! Your URI was <% $c->req->uri %>.

DESCRIPTION
Allows you to use Mason 2.x for your views.

VIEW CONFIGURATION

mason_root_class
    Class to use for creating the Mason object. Defaults to 'Mason'.

MASON CONSTRUCTOR
Other than any special mentioned keys above, the configuration for this view will be passed directly into "Mason->new".

There are a few defaults specific to this view:

comp_root
    If not provided, defaults "$c->path_to('root', 'comps')".

data_dir
    If not provided, defaults "$c->path_to('data')".

allow_globals
    Automatically includes $c.

All other defaults are standard Mason.

GLOBALS
All components have access to $c, the current Catalyst context.

METHODS

process ($c)
    Renders the component specified in "$c->stash->{template}" or, if not specified, "$c->action".

    The component path is prefixed with a '/' if it does not already have one, and Mason will automatically add a ".mc" extension - to change the latter, you can use

        __PACKAGE__->config(
            autoextend_request_path => 0
        );

    Request arguments are taken from "$c->stash".

render ($c, $path, \%args)
    Renders the component $path with "\%args", and returns the output.

AUTHOR
Jonathan Swartz <swartz@pobox.com>

COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Jonathan Swartz.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.