/** * 创建元素集 * @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)); }