我按照这个食谱禁用了 Dancer 的“布局”并重新启用了 TT 的“WRAPPER”:
这似乎是在路由级别更改布局/包装器中的令牌所必需的。简而言之,链接配方需要在 config.yml 文件中指定单个布局/包装器。
该配方在使用一种布局/包装器时效果很好,但是我如何在路由级别更改(或禁用)模板布局/包装器?
由于 Dancer 的原生布局被禁用,这不起作用:
template('mytemplate', { ... }, { layout => 'some_other_layout' }); # NO GOOD
另外,我尝试在渲染模板之前更改配置,但这似乎也不起作用:
# ALSO NO GOOD
config->{'engines'}->{'template_toolkit'}->{'WRAPPER'} = 'some_other_layout';
return template('mytemplate', { ... });
而且我也尝试使用舞者套装/设置,但也不好:
# ALSO NO GOOD
my $engines = setting('engines');
$engines->{'template_toolkit'}->{'WRAPPER'} = 'some_other_layout';
set engines => $engines;
有任何想法吗?