public function actionView($slug) { $model = new Comment(); if ($model->load(Yii::$app->request->post())) { $model->created_at = new Carbon(); $model->updated_at = new Carbon(); $model->user_id = Yii::$app->user->identity->id; if ($model->save()) { $model->article->updateAllCounters(['comments_count' => 1]); return $this->redirect(['view', 'slug' => $slug]); } } $article = Article::findOne(['slug' => $slug]); if (is_null($article)) { throw new NotFoundHttpException('请求页面不存在'); } return $this->render('view', ['article' => $article, 'model' => $model]); }
/** * 我的评论 * @param string $id * @return string|\yii\web\Response */ public function actionMyComment($id = "") { if (Yii::$app->request->isPost && $id != '') { $model = Comment::findOne($id); if ($model->user_id == Yii::$app->user->identity->id) { Yii::$app->session->setFlash('my_comment_delete_success', '评论删除成功'); $model->delete(); } else { Yii::$app->session->setFlash('my_comment_delete_error', '评论删除失败'); } return $this->redirect(['account/my-comment']); } $searchModel = new CommentSearch(); $dataProvider = $searchModel->mySearch(Yii::$app->user->identity->id); return $this->render('my-comment', ['dataProvider' => $dataProvider, 'searchModel' => $searchModel]); }
public function search($params) { $query = Comment::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); if (!($this->load($params) && $this->validate())) { return $dataProvider; } $this->addCondition($query, 'id'); $this->addCondition($query, 'user_id'); $this->addCondition($query, 'article_id'); $this->addCondition($query, 'content', true); $this->addCondition($query, 'created_at'); $this->addCondition($query, 'updated_at'); $this->addCondition($query, 'deleted_at'); return $dataProvider; }