Man pages sections > man3 > Dancer2::Core::Role::Template

Dancer2::Core::Role::Template - Role for template engines

Dancer2::Core::Role::Template(3pm) User Contributed Perl Documentation Dancer2::Core::Role::Template(3pm)

NAME

Dancer2::Core::Role::Template - Role for template engines

VERSION

version 0.205002

DESCRIPTION

Any class that consumes this role will be able to be used as a template engine under Dancer2.
In order to implement this role, the consumer must implement the method "render". This method will receive three arguments:
$self
$template
$tokens
Any template receives the following tokens, by default:
"perl_version"
 
Current version of perl, effectively $^V.
"dancer_version"
 
Current version of Dancer2, effectively "Dancer2->VERSION".
"settings"
 
A hash of the application configuration.
"request"
 
The current request object.
"params"
 
A hash reference of all the parameters.
 
Currently the equivalent of "$request->params".
"vars"
 
The list of request variables, which is what you would get if you called the "vars" keyword.
"session"
 
The current session data, if a session exists.

ATTRIBUTES

name

The name of the template engine (e.g.: Simple).

charset

The charset. The default value is UTF-8.

default_tmpl_ext

The default file extension. If not provided, tt is used.

views

Path to the directory containing the views.

layout

Path to the directory containing the layouts.

layout_dir

Relative path to the layout directory.
Default: layouts.

engine

Contains the engine.

METHODS

view_pathname($view)

Returns the full path to the requested view.

layout_pathname($layout)

Returns the full path to the requested layout.

pathname_exists($pathname)

Returns true if the requested pathname exists. Can be used for either views or layouts:
    $self->pathname_exists( $self->view_pathname( 'some_view' ) );
    $self->pathname_exists( $self->layout_pathname( 'some_layout' ) );

render_layout($layout, \%tokens, \$content)

Render the layout with the applied tokens

apply_renderer($view, \%tokens)

apply_layout($content, \%tokens, \%options)

process($view, \%tokens, \%options)

AUTHOR

Dancer Core Developers This software is copyright (c) 2017 by Alexis Sukrieh.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2017-10-22 perl v5.26.0