2013-12-22 40 views
1

我有一些麻煩,限制上的關係的結果,得到了行原來的號碼。讓我們一起去我secenario:極限結果嵌套並獲得總數行Laravel 4

我的帖子,帖子和評論的內容。我想選擇所有帖子並限制爲5條我的評論,但我需要知道該帖子有多少評論。

$post = Post::with(array('contentPost','commentPost' => function($query){ 
      $query->take(5); 
     }))->where('wall_id','=',$team_info->id)->get(); 

與這種關係我把評論限制在5這是正確的!但是如果我想指望所有的意見做

$post->commentPost->count();

它告訴我只有5評論,因爲我限制它。即使我限制了他們,我怎麼能得到真正的評論數量?

回答

2

在你$post->commentPost->count()電話,你問與$帖子相關聯的結果count()。當然,這將始終是查詢參數提供的實際行數。

「難道這一切在一個地方」,是很少在發展的答案。即使你找到了一種方法來實現它,將來當你需要改變這個查詢時會發生什麼?您最終得到的代碼很脆弱,容易破損。

保持你的關係,不被用5員額限制。爲計數運行單獨的查詢。

+0

謝謝你的答案我會盡力做到這一點! :) – Fabrizio