Sunday, October 18, 2015

CakePHP 3 how to limit number on items in contain per item not globally

I have articles connected with categories. I would like to get at most two articles for each category. There is many to one connection. So I use the following.

$query = $categories->find()->contain([      'Articles' => [          'queryBuilder' => function ($q) {              return $q->limit(2);           }      ]  ]);

Unfortunately the limit 2 seams to be global. I get 2 articles from the first category an then no articles connected with other categories.

How can I set the limit per item and not globally.

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.

No comments: