If I have a preloaded Template::Toolkit object, in mod_perl enviroment for example, is there any way to change INCLUDE_PATH array without recreating the object?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
I use the Template::Provider for this
my $template_config = {
INCLUDE_PATH => "/path/to/templates",
ENCODING => 'utf8',
};
# Create template_provider manually so that we can manipulate template path
# later.
my $template_provider = Template::Provider->new($template_config);
my $tt = Template->new({
LOAD_TEMPLATES => [$template_provider ],
PRE_CHOMP => 2,
POST_CHOMP => 3,
TRIM => 1,
ENCODING => 'utf8',
}) || die $Template::ERROR;
# somewhere else later
$template_provider->include_path([
"$dir/templates/$language",
"$dir/templates"]);