我不确定我做错了什么,但每次点击“赞”按钮都会显示错误
我正在使用laravel 5.5
当我点击帖子ID时,无论何时我点击它,它都清楚地起作用。
<Double-1>
我的控制台日志显示没有错误,类似按钮工作,但isLikedByMe函数保持渲染
假
在网络日志中,我不知道为什么。它可以查看数据库
PostController.php
http://127.0.0.1:8000/post/144/islikedbyme
路线
public function isLikedByMe($id)
{
$post = Post::find($id);
if (Like::whereUserId(auth()->user()->id)->wherePostId($post)->exists()){
return 'true';
}
return 'false';
}
Main.js
Route::get('post/{id}/islikedbyme', 'PostController@isLikedByMe');
Route::post('post/like/{post}', 'PostController@like');
答案 0 :(得分:1)
因为它被移除了,如果你想要删除它们就像这样:
public function isLikedByMe($id)
{
$post = Post::find($id);
if (Like::withTrashed()
->whereUserId(auth()->user()->id)
->wherePostId($post->id)->exists()){
return 'true';
}
return 'false';
}
如果你不想发布帖子,你甚至可以做得更好:
public function isLikedByMe($id)
{
if (Like::withTrashed()
->whereUserId(auth()->user()->id)
->wherePostId($id)->exists()){
return 'true';
}
return 'false';
}
答案 1 :(得分:0)
尝试以下内容:
public function isLikedByMe($id) {
$post = Post::find($id);
$is_like = Like::where(['user_id' => auth()->user()->id, 'post_id' => $post->post_id])->exists();
if ($is_like) {
return 'true';
}
return 'false';
}