2016-05-12 224 views
1

我想分頁所有的文章。其中15頁每頁。 這裏是調用分頁: Article::orderBy('created_at', 'desc')->paginate(15)Laravel雄辯複製查詢

分頁工作正常,但問題是,在每篇文章Laravel讓我的用戶表的查詢。每頁15篇文章,15條重複查詢到我的用戶表。 這裏是debugbar圖像: image source

我如何優化分頁和刪除所有這些重複的查詢?

+0

你的用戶和文章模型之間使用什麼樣的關係? –

+0

在用戶模型中,我有'公共函數文章() { }返回$ this-> hasMany(Article :: class); }'在文章中我有'public function user() {0}返回$ this-> belongsTo(User :: class); }'。 – ealocin

回答

0

您使用這些型號之間的一個一對多的關係,所以要解決這個問題(這被稱爲N+1 query problem),使用eager loading

Article::orderBy('created_at', 'desc')->with('user')->paginate(15)