public function actionDetail($id) { $userId = user()->getId(); $dependency = new CDbCacheDependency('SELECT UNIX_TIMESTAMP(updated_at) FROM {{user_messages}} WHERE user_id = :user_id AND id = :id LIMIT 1'); $dependency->params = array('user_id' => $userId, 'id' => $id); $model = UserMessages::model()->cache(3600 * 24, $dependency, 2)->findByPk($id, 'user_id = :user_id', array('user_id' => user()->getId())); if (!$model) { throw new CHttpException(404); } // Меняю статус на прочитаный if ($model->read == UserMessages::STATUS_NOT_READ) { $model->read = UserMessages::STATUS_READ; $model->save(FALSE, array('read')); } $this->render('//cabinet/messages/detail', array('model' => $model)); }