如何在laravel php中使用三元运算符从数据库中获取喜欢/不喜欢
我正在尝试检索一篇帖子中的如何在laravel php中使用三元运算符从数据库中获取喜欢/不喜欢,php,laravel,Php,Laravel,我正在尝试检索一篇帖子中的喜欢和不喜欢的数量 我在数据库中有下表,其中有一列决定喜欢还是不喜欢。如果它是1则表示喜欢如果它是零则表示不喜欢 问题: 我试图计算一篇文章中类似文章的数量,然后为每篇文章显示它,我试图使用三元运算符实现这一点,但是根据上表数据,我得到了每篇错误文章的类似和不喜欢 有没有什么我做错了,因为我认为代码应该可以工作 因为对于post\u id1来说,根据表格,喜欢的数量应该是2,但是我得到每个帖子的1喜欢和1不喜欢 代码 这就是我试图获取的喜欢的和不喜欢的 @if(cou
喜欢
和不喜欢
的数量
我在数据库中有下表,其中有一列决定喜欢还是不喜欢。如果它是1
则表示喜欢
如果它是零
则表示不喜欢
问题:
我试图计算一篇文章中类似文章的数量,然后为每篇文章显示它,我试图使用三元运算符实现这一点,但是根据上表数据,我得到了每篇错误文章的类似和不喜欢
有没有什么我做错了,因为我认为代码应该可以工作
因为对于post\u id
1
来说,根据表格,喜欢的数量应该是2
,但是我得到每个帖子的1
喜欢和1
不喜欢
代码
这就是我试图获取的喜欢的
和不喜欢的
@if(count( $post->likes()->where('$post->like'==1) )>=1 )
<small>{{ count($post->likes()->where('$post->like' ==1))>=1?count($post->likes()->where($post->like ==1)). ' Likes':count($post->likes()->where($post->like ==1)).'Dislike' }}</small>
@else
<small>// similary do this for dislikes when like column in the above table is 0</small>
@endif
</small>
@if(count($post->likes()->其中('$post->like'==1))>=1)
{count($post->likes()->where($post->like'==1))>=1?count($post->likes()->where($post->likes==1))。'likes':count($post->likes()->where($post->like==1))。'likes}
@否则
//类似地,当上表中的like列为0时,也可以针对不喜欢执行此操作
@恩迪夫
您可以使用eloquent提供的count和withCount方法,使这一过程更简单
您可以按如下方式计算控制器中的好恶:
$posts=App\Post::withCount([
'likes'=>函数($query){
$query->where('like',1);
},
'likes as dislikes_count'=>函数($query){
$query->where('like',0);
}
])->get();
然后你就可以在你的刀刃上计算这些了
Likes count:{{$post->Likes\u count}
不喜欢计数:{{$post->不喜欢计数}
谢谢。这个答案救了我一天。我不知道为什么这对我有用$count=$this['smsList']->count();ans smsList是我的亲属姓名。