一种动态更改 Template::Toolkit 中 INCLUDE_PATH 的方法

发布于 2024-10-02 12:50:30 字数 93 浏览 5 评论 0原文

如果我有一个预加载的 Template::Toolkit 对象,例如在 mod_perl 环境中,是否有任何方法可以更改 INCLUDE_PATH 数组而不重新创建该对象?

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?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

命比纸薄 2024-10-09 12:50:30

我为此使用 Template::Provider

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"]);

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"]);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文