【发布时间】:2017-10-19 04:04:26
【问题描述】:
我下面有 laravel jquery
public function getFollower(Request $request){
$userId = $request->get('user_id');
$artists = DB::table('artists')
->select('artists.id', 'artists.title as name ','artists.src as poster','followers.user_id',DB::raw('COUNT(followers.user_id) as followers'))
->leftjoin('followers', 'artists.id','=', 'followers.artist_id')
->where('artists.status',0)
->groupBy('followers.artist_id')
->orderBy('followers.id', 'desc')
->get();
return Response()->json(['data' => $artists], 200);
}
我想得到 Result 如下
data: [
{
"id": 3,
"name ": "Artist 3",
"poster": "",
"user_id": 1,
"followers": 1
},
{
"id": 2,
"name ": "Hello Artist 2",
"poster": "",
"user_id": 1,
"followers": 1
},
{
"id": 1,
"name ": "Thai",
"poster": "",
"user_id": 3,
"followers": 10
}
]
如果我使用 ->where('followers.user_id',$userId) by result 将只得到followers: 1
任何人都可以帮助我如何获得上述结果,我可以使用->where('followers.user_id',$userId)
谢谢!
【问题讨论】:
-
当我登录时,我想获取我关注的艺术家,并且每个艺术家显示关注者总数
-
如果我使用这个函数 ->where('followers.user_id',1) 我无法获得关注者结果计数只有 1 为什么?
-
为什么不使用关系而不是硬编码呢?
-
对不起,你的意思是关系而不是硬编码?
标签: php jquery mysql laravel laravel-5