1
我想分頁所有的文章。其中15頁每頁。 這裏是調用分頁: Article::orderBy('created_at', 'desc')->paginate(15)
Laravel雄辯複製查詢
分頁工作正常,但問題是,在每篇文章Laravel讓我的用戶表的查詢。每頁15篇文章,15條重複查詢到我的用戶表。 這裏是debugbar圖像: image source
我如何優化分頁和刪除所有這些重複的查詢?
我想分頁所有的文章。其中15頁每頁。 這裏是調用分頁: Article::orderBy('created_at', 'desc')->paginate(15)
Laravel雄辯複製查詢
分頁工作正常,但問題是,在每篇文章Laravel讓我的用戶表的查詢。每頁15篇文章,15條重複查詢到我的用戶表。 這裏是debugbar圖像: image source
我如何優化分頁和刪除所有這些重複的查詢?
您使用這些型號之間的一個一對多的關係,所以要解決這個問題(這被稱爲N+1 query problem
),使用eager loading
Article::orderBy('created_at', 'desc')->with('user')->paginate(15)
你的用戶和文章模型之間使用什麼樣的關係? –
在用戶模型中,我有'公共函數文章() { }返回$ this-> hasMany(Article :: class); }'在文章中我有'public function user() {0}返回$ this-> belongsTo(User :: class); }'。 – ealocin