Как очистить кэш виджета? 2.X

Как удалять при обновлении страницы кэш определенных виджетов?

 
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2610
Ежедневно по нескольку раз в день получаю запросы от пользователей "Почему я в онлайне, а в списке пользователей меня нет?"
Отвечаю, что так работает кэширование и через минуту все появится по 100 раз в день.
Пробовал писать в \system\controllers\users\widgets\online\widget.php
Код PHP:
  1. cmsCache::getInstance()->clean("users.list");
и
Код PHP:
  1. cmsCache::getInstance()->clean("users.online");
не помогает.
Отсюда вопрос, а возможно ли вообще как-то очищать кэш только определенных виджетов и определенных датасетов?
Или выход только один - отключить кэширование полностью?
Посетитель
small user social cms
МедальАвторитет форумаПочетный донор проектаКубок зрительских симпатий
Сообщений: 3089
Может в виджете "список пользователей" просто сделать
Код PHP:
  1. public $is_cacheable = false;
http://docs.instantcms.ru/dev/widgets
Редактировалось: 1 раз (Последний: 23 июля 2017 в 16:00)
Реклама
cms
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2610
Jestik,
Выглядит презентабельно. Но не работает.
Код PHP:
  1. class widgetUsersOnline extends cmsWidget {
  2.  
  3. // запрещаем кеширование виджета
  4. public $is_cacheable = false;
Перелогиниваюсь на другой аккаунт и еще минуту вижу в онлайне предыдущий.
Посетитель
small user social cms
МедальПочетный донор проектаКубок зрительских симпатийАвторитет форумаПочетный донор проекта
Сообщений: 2783
Ris:
Перелогиниваюсь на другой аккаунт и еще минуту вижу в онлайне предыдущий.
Ничего в этом не понимаю. Но, не сессии ли?
Украинский для инстант
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2610
Олег Васильевич я:
Ничего в этом не понимаю. Но, не сессии ли?
Вот так заработало:
Спойлер
То есть и запрет кэширования и очистка списка юзеров вместе.
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1152
Я тоже не разобрался как работает public $is_cacheable = false;
По этому использую $this->disableCache();
Код PHP:
  1. <?php
  2. class widgetTcompactStatistic extends cmsWidget {
  3.  
  4. public $is_cacheable = false;
  5.  
  6. public function run(){
  7.  
  8. $this->disableCache();
Редактировалось: 1 раз (Последний: 24 июля 2017 в 12:09)
Дополнения для InstantCMS 2 | Готовый сайт Доска объявлений
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.