public function store(ArticleRequest $request) { $request_data = $request->all(); if ($request->hasFile('image_file')) { $saveImage = true; $image_file = $request_data['image_file']; unset($request_data['image_file']); $request_data['image_name'] = $this->generateImageName($image_file->getClientOriginalExtension()); $request_data['mime_type'] = $image_file->getClientMimeType(); } $article = new Article($request_data); //Auto assign department_id for article $article->department()->associate(Auth::user()->department); //Auto assign user_id for article $article->user()->associate(Auth::user()); $article->save(); if ($saveImage) { $path = storage_path("app/articles/" . Auth::user()->articles->last()->id . "/"); $this->saveImage($path, $image_file, $request_data['image_name']); } return redirect('articles'); }