NAME

Mojolicious::Plugin::TtRenderer::Engine - Template Toolkit renderer for Mojolicious

VERSION

version 1.62

SYNOPSIS

Add the handler:

sub startup {
    ...

    # Via mojolicious plugin
    $self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});

    # Or manually
    use Mojolicious::Plugin::TtRenderer::Engine;

    my $tt = Mojolicious::Plugin::TtRenderer::Engine->build(
        mojo => $self,
        template_options => {
            PROCESS  => 'tpl/wrapper',
            FILTERS  => [ ... ],
            UNICODE  => 1,
            ENCODING => 'UTF-8',
        }
    );

    $self->renderer->add_handler( tt => $tt );
}

Template parameter are taken from $c->stash.

DESCRIPTION

See Mojolicious::Plugin::TtRenderer for details on the plugin interface to this module.

This module provides an engine for the rendering of Template Toolkit templates within a Mojolicious context. Templates may be, stored on the local file system, provided inline by the controller or included in the __DATA__ section. Where possible this modules attempts to provide a TT analogue interface to the Perlish templates which come with Mojolicious.

RENDERING

The template file for "example/welcome" would be "templates/welcome.html.tt".

When template file is not available rendering from __DATA__ is attempted.

__DATA__

@@ welcome.html.tt
Welcome, [% user.name %]!

Inline template is also supported:

$self->render(inline => '[% 1 + 1 %]', handler => 'tt');

HELPERS

Helpers are exported automatically under h namespace.

[% h.url_for('index') %]

METHODS

build

This method returns a handler for the Mojolicious renderer.

Supported parameters are

mojo build currently uses a mojo parameter pointing to the base class (Mojo). object. When used the INCLUDE_PATH will be set to
template_options

A hash reference of options that are passed to Template->new(). Note that if you specify an INCLUDE_PATH through this option it will remove the DATA section templates from your path. A better way to specify an INCLUDE_PATH if you also want to use DATA section templates it by manipulating the Mojolicious::Renderer path.

cache_dir

Absolute or relative dir to your app home, to cache processed versions of your templates. Will default to a temp-dir if not set.

SEE ALSO

Mojolicious::Plugin::TtRenderer, Mojolicious, Mojolicious::Guides, http://mojolicious.org.

AUTHOR

Original author: Ask Bjørn Hansen

Current maintainer: Graham Ollis <plicease@cpan.org>

Contributors:

vti

Marcus Ramberg

Matthias Bethke

Htbaa

Magnus Holm

Maxim Vuets

Rafael Kitover

giftnuss

Cosimo Streppone

Fayland Lam

Jason Crowther

spleenjack

Árpád Szász

Сергей Романов

uwisser

Dinis Lage

jay mortensen (GMORTEN)

Matthew Lawrence (MATTLAW)

COPYRIGHT AND LICENSE

This software is copyright (c) 2009-2021 by Ask Bjørn Hansen.

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