NAME
Template::Caribou::Files - Role to load templates from files
VERSION
version 0.2.4
SYNOPSIS
package MyTemplate;
use Moose;
with 'Template::Caribou';
with 'Template::Caribou::Files' => {
dirs => [ 'my_templates/' ],
auto_reload => 1,
};
1;
DESCRIPTION
With Template::Caribou::Files, a Caribou class will automatically import all template file (i.e., all files with a .bou
extension) under the given directories.
The names of the imported templates will be their path, relative to the imported directories, without their extension. To take the example in the "SYNOPSIS", if the content of my_templates/
is:
./foo.bou
./bar.bou
./baz/frob.bou
then the templates foo.bou
, bar.bou
and baz/frob
will be created.
METHODS
import_template_file( $name => $file )
Imports the content of $file as a template. If $name is not given, it is assumed to be the basename of the file, minus the extension.
Returns the name of the imported template.
ROLE PARAMETERS
dirs
The array ref of directories to scan for templates.
auto_reload
If set to true, the import directories will be rescanned and every file re-imported before every call to render
. Useful during development.
Defaults to false.
AUTHOR
Yanick Champoux <yanick@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Yanick Champoux.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.