環境
Mac Mojave
Vagrant環境
Laravel5.7
できていること
・ユーザーと投稿記事のリレーション
→ user_tableとpost_tableの連結
・詳細ページ(show.blade.php)でのいいね機能
こちらの記事で実装しました。
上から順番にやっていただければ同じ環境が作れるかと思います。
[Laravel] いいね機能実装してみた
要件(できていないこと)
・一覧ページ(index.blade.php)の各記事にいいね機能を持たせる
public function show($id)
内のように
public function index()
メソッドでも同じようにすれば
行けるかなと考え、やってみたところエラーになり思うように行きません。
試しに書いてみたコード
app/Http/Controllers/PostController
php
1// 中略 2public function index() 3 { 4 $authUser = Auth::user(); 5 $items = Post::with('user')->get(); 6 7 // ↓ この部分 8 $likes = $items->likes()->where('user_id', Auth::user()->id)->first(); 9 10 $params = [ 11 'authUser' => $authUser, 12 'items' => $items, 13 14 // ↓ この部分 15 'likes' => $likes, 16 ]; 17 return view('post.index', $params); 18 } 19// 中略