0
試圖在創建文章時上傳圖像並將該圖像附加到文章中,因此我可以在我的視圖中執行類似{{ $article->image->path }}
的操作。到目前爲止,一切都設置良好,文章被保存到正確的目錄,路徑被添加到數據庫(儘管路徑很奇怪,例如名爲「moon-wallpaper」的文件將被保存爲「img/moon -wallpaper.jpg.jpg「 - 由於某種原因它增加了兩次擴展名)。但無論如何..Laravel 5:上傳的圖像沒有附加到article_id
問題在我的問題是,保存到圖像表的圖像路徑應該有一個article_id附加到它被視爲引用...但我得到一個錯誤,錯誤說「試圖獲取非對象的屬性」,因爲商店方法中的$response->id
評估爲null = S我做錯了什麼?我怎樣才能正確地做到這一點?
任何幫助將是偉大的!
存儲方法在文章控制器:
public function store(ArticleRequest $request)
{
$this->createArticle($request);
$image = $request->file('image');
$uploads = 'img/';
$imageName = $image->getClientOriginalName().'.'.$image->getClientOriginalExtension();
$image->move($uploads, $imageName);
$response = $this->createArticle($request);
Image::create([
'path' => $uploads.$imageName,
'article_id' => $response->id
]);
return redirect('blog');
}
使用私有方法來創建文章。 createArticle方法:
private function createArticle(ArticleRequest $request)
{
$article = Auth::user()->articles()->create($request->all());
$this->syncTags($article, $request->input('tag_list'));
}
我有$ this-> createArticle($ request);然後返回重定向('blog');在商店的方法。這節省了一篇文章(減去所有其他圖像代碼)。我想,只是使用該方法來清理它。 – Lansana
如果你把dd($ response);在創建圖像的行之前,$ response有什麼功能? –
$ response has null = \ – Lansana