在之前的文章中,我詢問了獲得的總數是Laravel中值的sum()
。然而,當數據返回時,它只輸出總和而沒有任何通常會輸出的其他信息(例如:關係,時間戳等)。通常情況下,如果我只是把所有東西都作爲一個數字,這就不成問題。按時間戳排序彙總集合
下面是我正在重建的視覺的硬編碼示例,下面是創建它的數據。
data: [{
period: '2016-04',
views: 2666,
}, {
period: '2016-05',
views: 2778,
}, {
period: '2016-06',
views: 4912,
}, {
period: '2016-07',
views: 3767,
}, {
period: '2016-08',
views: 6810,
}, {
period: '2016-09',
views: 5670,
}, {
period: '2016-10',
views: 4820,
}, {
period: '2016-11',
views: 15073,
}],
所以無需編寫循環,有什麼去獲得所有帖子游客每天總和任何給定時間的最佳方式。基本上,一個用戶擁有很多帖子,每個帖子都有很多訪問者,所以下面是我如何得到它們的總和,但正如你上面看到的,我需要根據遊客表中的created_at
時間戳。
return Post::where('user_id', Auth::user()->id)->withCount(['visitors' => function($query)
{
$query->where('created_at', '<=', Carbon\Carbon::now())->where('created_at', '>=', Carbon\Carbon::yesterday());
}])->get()->sum('visitors_count');
這將工作在正常的設置。但是,由於一個用戶通過其cookie值進行標識,因此它們存在於Visitors表中。郵政唯一的字符串是外國人,每個訪問涉及一個特定的內容。因此,一個用戶可以訪問10個頁面,每個頁面都是訪問者表中的單獨條目(代表訪問者的歷史記錄和代表創建者的統計信息)。 – montelc0