Как сделать некешируемый вызов TV?
Добрый день!
Собственно весь вопрос в заголовке.
Есть страница, она кешируется, т.е по умолчанию стоит галочка «Кешируемый ресурс». В шаблоне этой страницы вызывается чанк [[!$Chank]]. В этом чанке вызывается TV-страницы [[!*TV1]], [[!*TV2]]. Так вот: кешируются эти TV и всё тут.
Ума не приложу, что делать. Если снять галочку «Кешируемый ресурс», то всё нормально работает. Но, ради пары динамичных цифр на странице убирать её всю из кеша — нелогично.
Что делать-то?
Спасибо за понимание!
P.S. TV меняю в сниппете, которых вызывается со страницы через ajax
P.P.S. Было предложено в этом сниппете вызывать clearCashe(). Не у верен, что это правильно. Хотя?!
Собственно весь вопрос в заголовке.
Есть страница, она кешируется, т.е по умолчанию стоит галочка «Кешируемый ресурс». В шаблоне этой страницы вызывается чанк [[!$Chank]]. В этом чанке вызывается TV-страницы [[!*TV1]], [[!*TV2]]. Так вот: кешируются эти TV и всё тут.
Ума не приложу, что делать. Если снять галочку «Кешируемый ресурс», то всё нормально работает. Но, ради пары динамичных цифр на странице убирать её всю из кеша — нелогично.
Что делать-то?
Спасибо за понимание!
P.S. TV меняю в сниппете, которых вызывается со страницы через ajax
P.P.S. Было предложено в этом сниппете вызывать clearCashe(). Не у верен, что это правильно. Хотя?!
Комментарии: 17
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Почистить кеш — одна строка в коде, но, наверное, кушает сколько-то ресурсов.
Написать +1 сниппет не проблема, но как-то нелогично.
clearCash() — много ресурсов кушает?
2. MODX формирует страницу — шаблон, чанки, спиппеты, плейсхолдеры, ТВшки. Дальше отдает назад браузеру.
3. Браузер, получив ответ, отрисовывает страницу. По готовности DOM модели или по кнопке браузер выполняет ajax запрос, который что-то меняет на сервере.
Вопрос, как измененные данные на сервере должны измениться в браузере (без яваскрипта)?
Я видимо чего-то не понимаю.
Кроме того
А вызывать метод чистки кэша при каждом запросе — это логично?
Данные с помощью ajax ушли на сервер, вернулись, javascript'ом вставились куда надо. Всё хорошо. Дальше, жму F5 или перехожу на другую страницу, а потом возвращаюсь. Данные берутся из кеша, т.е. те, которые были до манипуляций с ajax. В этом и была загвоздка, что вроде должны опять обработаться сервером, потом отобразиться браузером… т.е. Ваши пункты 1,2,3, но всё было не так как надо :-)
Поэтому, когда после ajax'а данные ушли на сервер, там обработались (+почистился кеш страницы), потом вернулись и вставились, жмем F5 и у нас грузится страница с нормальными данными.