Ich versuche, dieses Symfony Bündel zu verwenden: https://github.com/KnpLabs/KnpPaginatorBundleDer richtige Weg, um eine Paginierung Klasse in Symfony der Verwendung
In der Dokumentation, sie es verwenden einen Controller. Sie haben also einfachen Zugriff auf den Servicebehälter oder das Anfrageobjekt.
Aber soweit ich verstehe, sollte die Doctrine-Abfrage in einem Repository sein, kein Controller, oder? Und ich habe bereits eine Funktion, die Datensätze zurückgibt. Es ist nur so, dass der Paginierungsdienst beim Instantiieren keine "Ergebnisse" erwartet. Es will die Abfrage. Daher kann ich die "Ergebnisse" nicht zum Controller zurückgeben, sondern benutze einen Paginator in der Mitte dieser Funktion.
Auf der anderen Seite gehören Dinge wie das Spielen mit Diensten oder Anfragen tatsächlich zu Controllern.
Also wie soll das gemacht werden? Zuerst dachte ich darüber nach, den Dienst "knp_paginator" und das Anfrageobjekt in das Repository zu übernehmen. Aber ich denke nicht, dass dies der richtige Weg ist.
Bu Ich brauche das Request-Objekt, um URL-Parameter ($ Anfrage-> Abfrage-> GetInt ('Seite', 1)) zu erhalten, aber ich dachte auch, dass wir dieses Objekt nirgends passieren sollten ... –
Ich habe die bearbeitet Antwort mit weiteren Erläuterungen – hasumedic
Danke @hasumedic! –