Laravel Eloquent 社交网络

Laravel Eloquent for Social Network

我正在建立社交网络。我有 UsersPosts。对于 like 概念,我创建了一个 table(喜欢): _______________________ |id | post_id | user_id | | | | |

我想在每个 post 下方显示喜欢 post 的人。 所以我需要为每个 Like 保存一行 . 我的问题是 Eloquent 以及如何保存 喜欢

    $post = Post::find($request->postId);
    $like = new Likes();
    $user = $request->user();
    $post->likes()->save($like, $user);
    return 'done';

此代码集user_id(点赞数)0

Like Concept有没有更好的方法?

在你的控制器中使用这个方法: public 函数 postLikePost(请求 $request) { $post_id = $请求['postId']; $is_like = $request['isLike'] === 'true' ? true:false; $更新=假; $post = Post::find($post_id); 如果(!$post){ return空; } $user = Auth::user(); $like = $user->likes()->where('post_id',$post_id)->first(); 如果($喜欢){ $liked = $like->喜欢; $更新=真; 如果($喜欢== $is_like) { $like->删除(); return空; } } 别的 { $like = new Like(); //死($like); }

    $like->likes = $is_like;
    $like->user_id = $user->id;
    $like->post_id = $post->id;
    if($update){
        $like->update();
    }
    else{
        $like->save();
    }
    return null;
    }