Я не уверен в том, что вы использовали ранее, но я не думаю, что на самом деле он делал то, что вы думаете.Весь смысл выходного кэша заключается в том, что он обходит процесс рендеринга представления, поэтому все, что вы кэшируете, просто возвращается как есть, и не обрабатывается дальше, чтобы определить, нужно ли что-то внутри отображать.
Если вы кешируетевсю страницу, то вы не можете иметь внутри какую-либо часть, которая должна варьироваться для каждого пользователя.Вам просто нужно уменьшить объем того, что вы кэшируете.Кэшируйте части страницы, которые не меняются, и это, по крайней мере, даст главной странице преимущество в рендеринге.Для этого и нужен помощник по тегам cache
.Вы также можете кэшировать только для конкретного пользователя с помощью этого помощника тега:
<cache vary-by-user="true">
<!-- user-specific stuff -->
</cache>
Это все равно будет отображаться несколько раз, но только один раз для каждого пользователя.После того, как он был кэширован для конкретного пользователя, будет использоваться кеш.