Kategorien

Suchen


Aktuelle Artikel

Archiv


« | Startseite | »

cakePHP: Wie überliste ich Cake / Sortierung ohne Paginierung

Benjamin Kuska | 28.08.2009

Sie wollen ihre Daten, geholt über eine eigene Query anstatt über die Cake Paginierung, über die Sortierfunktionalität von Cake in der View sortierbar machen. Hierzu haben Sie bereits das entsprechende Element in der Kopfzeile der Tabelle integriert.
<th><?php echo $paginator->sort('Author', 'Author.name'); ?></th>
Da keine Paginierungsmethode im Controller genutzt wurde muss die Session für den PaginatorHelper entsprechend per Hand erstellt werden:
$options = array(
   'order' => array(
      $this->params['pass']['sort'] => $this->params['pass']['direction']
   )
);
$this->params['paging']['ModelName']['options'] = $options;
$this->params['paging']['ModelName']['defaults'] = $options;

Kategorie: cakePHP | 2 Kommentare »

2 Antworten auf “cakePHP: Wie überliste ich Cake / Sortierung ohne Paginierung”

  1. Karl meint:
    17.11.2009 um 18:12

    Danke für deinen Eintrag!

    Leider ist mir nicht klar wo ich den Code einfügen muss, damit $paginator im view erkannt wird.

    Bzw. man muss in deinem Code nur den ModelName anpassen?

  2. Benjamin Kuska meint:
    18.11.2009 um 18:11

    Hallo Karl,

    wenn Du in der View die Tableheader-Zeile eingesetzt hast kannst Du in der Action deines Controllers das Options-Array aufbauen und entsprechen im params Array einfügen.

    Wie Du richtig erkannt hast musst Du hier den ModelName entsprechend deines Models anpassen.

    Viel Erfolg.
    Benny

Kommentare