The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Egg::View::Mason - View for HTML::Mason

SYNOPSIS

  __PACKAGE__->egg_startup(
    ...
    .....
  
  VIEW=> [
    [ 'Mason' => {
      comp_root=> [
        [ main   => '/path/to/root' ],
        [ private=> '/path/to/comp' ],
        ],
      data_dir=> '/path/to/temp',
      ... other HTML::Mason option.
      } ],
    ],
  
   );
  
  # The VIEW object is acquired.
  my $view= $e->view('Mason');
  
  # It outputs it specifying the template.
  my $content= $view->render('hoge.tt', \%option);

DESCRIPTION

It is a view to use the template of HTML::Mason.

Please add Mason to the setting of VIEW to make it use.

  VIEW => [
    [ Mason => { ... HTML::Mason option. (HASH) } ],
    ],

The global variable that can be used is as follows from the template.

  $e ... Object of project.
  $s ... $e->stash
  $p ... $e->view('Mason')->params
  $m ... Object of HTML::Mason.

HANDLER METHODS

Egg::View has been succeeded to.

new

Constructor.

Egg::View::Template::GlobalParam is set up.

  my $view= $e->view('Mason');

render ([TEMPLATE_STR], [OPTION])

It is HTML::Mason as for the template of TEMPLATE_STR. The result of evaluating is returned by the SCALAR reference.

OPTION is HTML::Mason?. It is an option to pass. OPTION overwrites a set value of the configuration.

  my $body= $view->render( 'foo.tt', 
    ..........
    ....
    );

output ([TEMPLATE], [OPTION])

The result of the render method is set in $e->response->body.

When TEMPLATE is omitted, it acquires it from $view->template.

OPTION is passed to the render method as it is.

  $view->output;

SEE ALSO

Egg::Release, Egg::View, Egg::View::Template::GlobalParam, HTML::Mason,

AUTHOR

Masatoshi Mizuno <lushe@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2008 Bee Flag, Corp. <http://egg.bomcity.com/>.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.