In Doctrine 2.1 method EntityRepository#findBy() now accepts additional parameters for ordering, limit and offset.
see full list new features in doctrine 2.1 (404)
Relevant link to findBy and findOneBy
example:
public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
usage:
$product = $repository->findBy(
array('name' => 'foo'),
array('price' => 'ASC'),
$myLimit,
$myOffset
);
For Doctrine Query Language you have:
QueryBuilder::setMaxResults(integer $maxResults)
The findBy() method of the generic repository class doesn't support this.
I would write your own repository (as outlined here) and override findBy() to take additional parameters. Your new implementation could use the query builder, or plain-old-DQL to build up the proper query. (I'd use the querybuilder, as you can probably just pass the $critera param right into QueryBuilder::where())
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With