Php 在与laravel一起使用时,如何从关系表中选择计数

Php 在与laravel一起使用时,如何从关系表中选择计数,php,mysql,laravel-5,eloquent,relationships,Php,Mysql,Laravel 5,Eloquent,Relationships,我正在为一个社交应用工作,我需要显示带有标记用户的提要、散列标记,如计数、评论计数、评论以及评论过的用户详细信息 该提要与普通提要略有不同,下面是数据库结构 用户表: id用户名电子邮件图像 电影表:(管理员将添加电影,用户将通过按标题搜索电影对其进行评分) id标题图像说明 分级表:(这将是一个提要,a用户分级了x电影,,而分级用户将标记给另一个用户,并使用一些哈希标记) idmovie\u id用户id评级说明 分级标记表:(它将保存哈希标记id和分级id) idrating\u idtag

我正在为一个社交应用工作,我需要显示带有标记用户的提要、散列标记,如计数、评论计数、评论以及评论过的用户详细信息

该提要与普通提要略有不同,下面是数据库结构

用户表:

id
用户名
电子邮件
图像

电影表:(管理员将添加电影,用户将通过按标题搜索电影对其进行评分)

id
标题
图像
说明

分级表:(这将是一个提要,
a
用户分级了
x
电影,
,而分级用户将标记给另一个用户
,并使用一些
哈希标记

id
movie\u id
用户id
评级
说明

分级标记表:(它将保存哈希标记id和分级id)

id
rating\u id
tag\u id

评级\u用户表:(它将保存标记的用户id和评级id)

id
rating\u id
tag\u id

喜欢表格:

id
rating\u id
user\u id

评论表:

id
rating\u id
user\u 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();
}

我认为这可以通过在各个模型中使用关系来实现,并在需要时使用该关系获取数据

因此,首先找出相关表之间的关系,并将关系放在每个模型中。然后尝试使用与模型对象的关系。请尝试使用关系解决问题,如果您仍然无法解决问题,请将带有关系和视图代码的模型发布到您希望显示提要的位置,我将尝试解决问题

我想你已经看了有关的官方文件。如果还没有,请看一看