/** * Create article * @author Devin Jin */ public function actionCreate() { $attributes = $this->getParams(); $article = new Article(); $article->load($attributes, ''); //short url generation $article->_id = new \MongoId(); $originUrl = Yii::$app->request->hostInfo . '/msite/article/' . $article->_id; $urlArr = Yii::$app->urlService->shortenUrl($originUrl); $article->url = $urlArr['Short']; $accountId = $this->getAccountId(); $article->accountId = $accountId; if (false === $article->save()) { $errors = array_keys($article->errors); if ($errors[0] == 'name') { $errors[0] = 'title'; } throw new InvalidParameterException([$errors[0] => Yii::t("microSite", $errors[0] . '_field_not_empty')]); } else { return $article; } }