/** * Creates a new File model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new File(); try { if ($model->load($_POST) && $model->save()) { return $this->redirect(Url::previous()); } elseif (!\Yii::$app->request->isPost) { $model->load($_GET); } } catch (\Exception $e) { $msg = isset($e->errorInfo[2]) ? $e->errorInfo[2] : $e->getMessage(); $model->addError('_exception', $msg); } return $this->render('create', ['model' => $model]); }
/** * Creates a new File model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new File(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { $dir = Yii::getAlias('@app/uf'); foreach (UploadedFile::getInstances($model, 'files') as $file) { $file->saveAs($dir . '/' . $file->baseName . '.' . $file->extension); $new_file = new File(); $new_file->setAttributes($model->attributes); $new_file->file_name = $file->baseName . '.' . $file->extension; $new_file->file_path = $dir . '/' . $file->baseName . '.' . $file->extension; $new_file->table_name = 'person'; $new_file->class_name = Person::className(); $new_file->save(); } Yii::$app->getSession()->addFlash('success', "Запись \"{$model->id}\" успешно добавлена."); return $this->redirect(Url::previous() != Yii::$app->homeUrl ? Url::previous() : ['view', 'id' => $model->id]); } else { if (Yii::$app->request->referrer != Yii::$app->request->absoluteUrl) { Url::remember(Yii::$app->request->referrer ? Yii::$app->request->referrer : null); } if (!Yii::$app->request->isPost) { $model->setAttributes(Yii::$app->request->get()); } return $this->render('create', ['model' => $model]); } }
/** * Creates a new File model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new File(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Creates a new File model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { if (!Yii::$app->user->can("admin")) { throw new HttpException(403, 'You are not allowed to perform this action.'); } $model = new File(); if ($model->load(Yii::$app->request->post())) { if (!file_exists($model->filepath)) { $model->addError('filepath', "File does not exist, please provide a valid path."); return $this->render('create', ['model' => $model]); } $model->size_bytes = filesize($model->filepath); if ($model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } } else { return $this->render('create', ['model' => $model]); } }