Удаление sql кеша запроса

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
nikitakls
Сообщения: 47
Зарегистрирован: 2011.01.25, 08:18

Удаление sql кеша запроса

Сообщение nikitakls »

Есть такой запрос

Код: Выделить всё

       $this->user = Yii::app()->db->cache(1000)->
             createCommand('select user_ball from users where id='.$userID)->queryRow();
Эта информация отображается в виждете профиля пользователя, на каждой странице.
Хочется это дело по хорошоме закешировать.
Проблема возникает в том что когда у пользователя меняется user_ball нужно сбросить кеш, а как это проще сделать.
Каким образом подсчитать id запроса
Ведь при вычислении id запроса учитывается имя базы имя пользователя и т.д.

Также вопрос подобного рода
как удалить кеш фрагмента

Код: Выделить всё

    if($this->beginCache('sidebar', array('duration'=>600)))
    {
        $this->widget('w1');
        $this->widget('w2');
        $this->widget('w3'); 
       $this->endCache();
    } 

Аватара пользователя
resurtm
Сообщения: 299
Зарегистрирован: 2010.12.19, 09:13
Откуда: Казахстан, Алма-Ата
Контактная информация:

Re: Удаление sql кеша запроса

Сообщение resurtm »

1. Подумать над использованием cache dependency?

2. Yii::app()->cache->delete(COutputCache::CACHE_KEY_PREFIX.'sidebar');

Ответить