2011-02-06 110 views
1

我在Smarty 3中的嵌套模板缓存中存在问题。看起来,当我做{include} Smarty会忽略调用方模板的缓存设置。Smarty缓存与嵌套模板问题

在template1.tpl:例如,假设智者缓存已经在控制器启用

{include file='template2.tpl' nocache} 

在template2.tpl:

{include file='template3.tpl'} 

在template3.tpl

{$smarty.now} 

页面上显示的{$smarty.now}值是,直到缓存未清除,始终等于t他第一页可视化的时间,尽管第一个子模板被强制不被缓存。 这对我来说是一个烦人的问题,因为我需要控制的所有缓存设置template2.tpl的内容及其从template1.tpl的子模板。

有没有优雅的解决方法?

+0

如果我的回答帮你包围,你应该考虑的标记它作为答案 – 2012-09-13 08:43:34

回答

0

Smarty不缓存template2的内容(将它们移动{$smarty.now}),但它确实缓存了template3。也包括它与nocache。

我经历了同样的问题,我重新设计我的模板,所以我能够缓存大部分,只有部分无需缓存我{nocache} content {/nocache}