使用Twig时是否可以定义模板区域不缓存?

时间:2013-03-28 06:27:43

标签: php templates twig

我正在寻找一种方法来定义Twig不会缓存的模板中的区域或块。

有关如何使用它的示例:

在搜索后显示结果列表的网站上,有一个过滤器区域。每个过滤器都保存为会话,当文档未缓存时,过滤器值与会话匹配。

启用Twig缓存可防止此功能正常工作,但如果可以指定不缓存的区域,我可以排除网站正常运行的过滤区域。

Twig可以实现吗?

1 个答案:

答案 0 :(得分:0)

您使用什么样的缓存? ESI缓存允许您为模板的不同部分提供不同的缓存规则,因此,如果您使用此缓存规则,您可以定义应缓存哪些区域以及哪些区域不应缓存:http://symfony.com/doc/master/book/http_cache.html#edge-side-includes

如果您不熟悉ESI缓存,KNP提供了一个方便的教程:http://knpuniversity.com/screencast/new-symfony-2.2/fragments-esi-caching