Bug #81887

make extbase pagination work with QueryBuilder

Added by Tymoteusz Motylewski about 4 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2017-07-15
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:
On Location Sprint

Description

Since 8.7 you can pass a QueryBuilder object as a parameter to the statement() method of the Extbase Query.

So inside repository method you can do sth like:


$queryBuilder->select('*')->...

$query = $this->createQuery();
$query->statement($queryBuilder);

return $query->execute();

The only missing thing is pagination support for queries built this way.

To achieve that we need 2 changes:
1)
in Typo3DbQueryParser::convertQueryToDoctrineQueryBuilder
we need to early return, as the QueryBuilder object is already available, so there is no need for a conversion.

2) in Typo3DbBackend::getObjectDataByQuery
set limit and offset to the query

Also available in: Atom PDF