Symfony 如何为app.user禁用缓存

Symfony 如何为app.user禁用缓存,symfony,caching,Symfony,Caching,我有一个要缓存的Symfony2页面: $response = $this->render(...); $response->setMaxAge(15*60); return $response; 现在,在该页面上,我显示了用户名(如果已登录)或登录按钮(如果未登录)。现在,当调用该页面并且我已登录时,注销并返回该页面,username仍然显示 如何在页面主体仍启用缓存的情况下防止这种行为?这最好使用ESI来实现 您可以使用ESI单独缓存页面的各个部分。这最好使用ESI来完成

我有一个要缓存的Symfony2页面:

$response = $this->render(...);
$response->setMaxAge(15*60);
return $response;
现在,在该页面上,我显示了
用户名
(如果已登录)或登录按钮(如果未登录)。现在,当调用该页面并且我已登录时,注销并返回该页面,
username
仍然显示


如何在页面主体仍启用缓存的情况下防止这种行为?

这最好使用ESI来实现


您可以使用ESI单独缓存页面的各个部分。

这最好使用ESI来完成


您可以使用ESI单独缓存页面的各个部分。

这最好使用ESI来完成


您可以使用ESI单独缓存页面的各个部分。

这最好使用ESI来完成


您可以使用ESI单独缓存部分页面。

谢谢您的回答。您知道一种侵入性较小的方法吗?您可以尝试简单地在Twig中使用render标记,并嵌入一个控制器响应,该响应反过来具有缓存规则。谢谢你的回答。您知道一种侵入性较小的方法吗?您可以尝试简单地在Twig中使用render标记,并嵌入一个控制器响应,该响应反过来具有缓存规则。谢谢你的回答。您知道一种侵入性较小的方法吗?您可以尝试简单地在Twig中使用render标记,并嵌入一个控制器响应,该响应反过来具有缓存规则。谢谢你的回答。您知道一种侵入性较小的方法吗?您可以尝试简单地在Twig中使用render标记,并嵌入一个控制器响应,该响应反过来具有缓存规则。