laravel - 按日期(created_at)对数据进行分页

hah*_*ute 1 pagination group-by laravel laravel-4

我想显示按日期分组的照片。它可以工作,但只能使用两个查询并且没有分页。有没有一种方法可以使用 laravel paginate() 仅使用一个查询来完成此操作?我需要最近 5 天的数据(仅限那些有图片的数据),然后每页始终需要 5 天的数据。

问题是,我想对日子进行分页,而不是对图片进行分页。

    $days = Pic::select(DB::raw('DATE(created_at) as datum'))
                   ->distinct()
                   ->orderBy('datum','desc')
                   ->take(5)
                   ->get();

$daysarray = array();
foreach($days as $day)
{
   $pics = Pic::where(DB::raw('DATE(created_at)'),'=',$day->datum)
                    ->orderBy('id','desc')
                    ->get();

   $daysarray[$day->datum] = $pics;
}
Run Code Online (Sandbox Code Playgroud)

Col*_*mes 5

我相信您将不得不忍受两个查询才能对日期进行分页。以下内容应该适用于该位。

$days = Pic::select(DB::raw('DATE(created_at) as datum'))
    ->distinct()
    ->orderBy('datum','desc')
    ->paginate(5);
Run Code Online (Sandbox Code Playgroud)