我正在为社交应用程序工作,我需要显示具有标记用户,散列标记的提要,如计数,评论计数,注释和评论的用户详细信息。如何在使用laravel时从关系表中选择计数
饲料有点不同于正常饲料,这里是数据库结构。
用户表:
id
username
email
image
电影表:(管理员将添加动画,用户将率,通过按标题搜索电影)
id
title
image
description
评分表:(这将是一个进料,其a
用户已经额定x
电影,while rating user will tag to another user
,还可以使用一些hash tags
)
id
movie_id
user_id
rating
description
rating_tag表:(它将持有散列标签ID和评级ID)
id
rating_id
tag_id
rating_user表:(将举办标记的用户ID和等级ID)
id
rating_id
tag_id
喜欢表:
id
rating_id
user_id
意见表:
id
rating_id
user_id
comment
现在我需要显示的所有的东西饲料,评级和所有饲料(谁额定用户图像,动画图像,标题和说明)评论谁曾评论过这些用户的详细信息和总计数。
我有使用,但它没有给我适当的结果。
public function getAllForFeed ($user_ids) {
return $this->with(['tags' => function ($q) {
$q->select('tags.id');
}])->with(['likes' => function ($q) {
$q->select(DB::raw('count(id) as like_count'));
}])->with(['comments' => function ($q) {
$q->select('user_id', 'comment');
}])->with(['users' => function ($q) {
$q->select('users.id');
}])->whereIn('user_id', $user_ids)->get()->toArray();
}