public function create($discussionSlug) { $discussion = $this->discussions->getBySlug($discussionSlug); $comment = new Comment(); $comment->discussion()->associate($discussion); return $this->respond('comments.create', compact('comment', 'discussion')); }
/** * Creates a new post given discussion & user IDs, title, and content * * @param $discussionId * @param $userId * @param $title * @param $content * @return Comment */ public function create($discussionId, $userId, $title, $content) { $comment = new Comment(); $comment->discussionId = $discussionId; $comment->userId = $userId; $comment->title = $title; $comment->content = $content; $comment->raise(new MemberHasRespondedWithComment($comment)); return $comment; }
/** * We have a number of observers that immediately update related data when certain * actions occur, such as the number of comments on a discussion, or who last updated * or contributed to a category in some way. */ public function boot() { $countCacheObserver = $this->app->make(CountCacheObserver::class); $updatedByObserver = new UpdatedByObserver(); Comment::observe($countCacheObserver); Comment::observe($updatedByObserver); Discussion::observe($countCacheObserver); Discussion::observe($updatedByObserver); }