/** * Manages all models. */ public function indexAction() { $movie_class_model = new MovieClassModel(); if ($_SERVER['REQUEST_METHOD'] == 'POST') { //保存修改 if (!is_array($_POST['Class']['class_name'])) { $_POST['Class']['class_name'] = array(); } foreach ($_POST['Class']['class_name'] as $_k => $_v) { $flag = $this->db->update('{{movie_classes}}', array('class_name' => $_v, 'class_identify' => $_POST['Class']['class_identify'][$_k], 'class_rank' => $_POST['Class']['class_rank'][$_k]), 'class_id=:class_id', array('class_id' => $_k)); if ($flag) { $this->db->update('{{movie_classes}}', array('class_lasttime' => $_SERVER['REQUEST_TIME']), 'class_id=:class_id', array('class_id' => $_k)); //记录操作日志 $message = '{user_name}修改了电影分类{class_name}'; $data = array('class_name' => $_v, 'data' => array('old' => $movie_class_model->getClassById($_k), 'new' => $_POST)); UserLogsModel::inst()->add('Movie/Class', $_k, 'Modify', 'success', $message, $data); } } //添加新记录 if (!is_array($_POST['Class']['new_class_name'])) { $_POST['Class']['new_class_name'] = array(); } foreach ($_POST['Class']['new_class_name'] as $_k => $_v) { if (is_array($_v)) { foreach ($_v as $__k => $__v) { $flag = $this->db->insert('{{movie_classes}}', array('class_id' => '', 'parent_id' => $_k, 'class_name' => $__v, 'class_identify' => $_POST['Class']['new_class_identify'][$_k][$__k], 'class_rank' => $_POST['Class']['new_class_rank'][$_k][$__k], 'class_status' => MovieClassModel::STAT_STATUS_NORMAL, 'class_lasttime' => $_SERVER['REQUEST_TIME'], 'class_dateline' => $_SERVER['REQUEST_TIME'])); if ($flag) { //记录操作日志 $message = '{user_name}添加了电影分类{class_name}'; $data = array('class_name' => $__v, 'data' => $_POST['Class']); UserLogsModel::inst()->add('Movie/Class', $this->db->getLastInsertID(), 'Insert', 'success', $message, $data); } } } else { $flag = $this->db->insert('{{movie_classes}}', array('class_id' => '', 'parent_id' => 0, 'class_name' => $_v, 'class_identify' => $_POST['Class']['new_class_identify'][$_k], 'class_rank' => $_POST['Class']['new_class_rank'][$_k], 'class_status' => MovieClassModel::STAT_STATUS_NORMAL, 'class_lasttime' => $_SERVER['REQUEST_TIME'], 'class_dateline' => $_SERVER['REQUEST_TIME'])); if ($flag) { //记录操作日志 $user = $this->user; $message = '{user_name}添加了电影分类{class_name}'; $data = array('class_name' => $_v, 'data' => $_POST); UserLogsModel::inst()->add('Movie/Class', $this->db->getLastInsertID(), 'Insert', 'success', $message, $data); } } } $movie_class_model->updateCache(); $this->redirect('/movie/class/index'); } $this->getView()->assign(array('classes' => $movie_class_model->getClassesByCache())); }
/** * 强制更新缓存 */ public function updateCache() { // self::$__classes = null; // if (isset($this->cache)) { self::$__classes = $this->buildClassesList(); Yii::app()->cache->set('movie.classes', self::$__classes); } return true; }