예제 #1
0
 /**
  * 创建元素集
  * @author gentle
  */
 public function actionCreate($id)
 {
     $model = new CardDs("Create");
     $model->database_id = $id;
     $db_model = $this->loadModel($id, 'db');
     if (isset($_POST['CardDs'])) {
         $CardDsArray = array();
         $CardDsArray[0]['database_id'] = $model->database_id;
         $CardDsArray[0]['name'] = $_POST['CardDs']['name'];
         $CardDsArray[0]['en_name'] = $_POST['CardDs']['en_name'];
         if (isset($_POST['CardDs']['additionField'])) {
             foreach ($_POST['CardDs']['additionField'] as $key => $value) {
                 if (empty($value['name']) || empty($value['en_name'])) {
                     continue;
                 }
                 $CardDsArray[$key] = $value;
                 $CardDsArray[$key]['database_id'] = $model->database_id;
             }
         }
         foreach ($CardDsArray as $val) {
             $model = new CardDs("Create");
             $model->database_id = $id;
             $model->attributes = $val;
             if (!$model->save()) {
                 $errorMsg = '';
                 $errorErr = $model->getErrors();
                 foreach ($errorErr as $value) {
                     $errorMsg .= "\t" . $value[0];
                 }
                 $errorMsg = trim($errorMsg, ',');
                 Yii::app()->user->setFlash("error", $errorMsg);
                 $this->redirect(array('CardDs/index/id/' . $id));
                 Yii::app()->end();
             } else {
                 $this->addLog('ds', $model->id, '在“' . $db_model->name . '”中新加了表“' . $model->name . '”');
             }
         }
         Yii::app()->user->setFlash("success", "新建 <b>{$model->name}</b> 数据表成功!");
         $this->redirect(array('CardDs/index/id/' . $id));
     }
     //@TODO yongze del
     //$dbModel = $this->loadModel($id, 'db');
     $this->renderPartial('_form_ds', array('model' => $model, 'dbModel' => $db_model));
 }