雄辩 - 获取相关元素

时间:2015-05-06 12:57:19

标签: php laravel-5

我有一张名为images的表格,用户可以为每张图片投票 当用户对图像进行投票时,我在votes表中添加了一个新行来注册投票和user_id

图片:
- Id
- 图像名称

投票:
- User_id
- Image_id

现在我需要按投票数量排列所有图像,我该怎么办?

我在Image.php文件中添加了一个新方法:

  public function votes()
    {
        return $this->hasMany( 'App\Vote' );
    }

我应该获得所有图像然后订购吗?

我在考虑:

$images = Image::with('votes')->get();

这是正确的方法还是有雄辩的隐藏功能?

1 个答案:

答案 0 :(得分:2)

试试这个:

$images = Image::with('votes')->get()->sortByDesc(function($sort)
{
    return $sort->votes->count();
});

有关分页,请查看manual pagination