Ergebnis 1 bis 8 von 8

Thema: Contao 3.5: Datensätze im Frontend sortieren

  1. #1
    Contao-Nutzer
    Registriert seit
    10.03.2016.
    Beiträge
    39

    Standard Contao 3.5: Datensätze im Frontend sortieren

    Hallo Community,

    in einem Frontend-Modul lasse ich mir Datensätze über mehrere Tabellenverbindungen hinweg auflisten.

    PHP-Code:
    $examsWithStudents =array(); 
    $objPerform = \ExamPerformModel::findAll();        
    if(
    $objPerform !==null) {
        while (
    $objPerform->next()) {
        
    $students $objPerform->getRelated('userid');
        
    $exams =$objPerform->getRelated('examid');
        
    $tempExam = array (
        
    'examDate' =>$exams->date,
        
    'studentName' =>$students->lastname.', '.$students->firstname,
        ...
        );
        
    $examsWithStudents[] =$tempExam;
        
                          }
                        
    $this->Template->exams =$examsWithStudents

    Hierzu hätte ich zwei Fragen:
    1. Bietet mir Contao eine Möglichkeit, das ganze standardmäßig anhand des Feldes $exams->date zu sortieren, oder muss ich dies mit PHP lösen?
    Ich hatte gehofft, mit dem folgenden dca-Eintrag innerhalb der tl_exam eine Sortierung zu erhalten, offenbar hat das aber keine auswirkung auf das Frontend:
    PHP-Code:
                // List
            
    'list'     => array
        (
                    
    'sorting'           => array
            (
                
    'mode'        => 2,
                
    'fields'      => array('date,ESC'),
                
    'flag'        => 1,
                
    'panelLayout' => 'filter;sort,search,limit'
            
    ),
            ...
    ), 
    2. Nach einem Klick auf alle anderen Spalten soll der Nutzer seine Datensätze
    auch manuell sortieren können. Ist sowas mit Contao Bordmitteln möglich oder
    muss ich hier selber mit JavaScript o. ä. ran? Gibt es evtl. ein Modul, dass so
    einen Mechanismus schon implementiert hat, bei dem ich ein wenig abschauen kann?

    Wie immer vielen Dank für alle Antworten und vg
    Snape

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.126
    Partner-ID
    10107

    Standard

    Diese DCA Einträge sind nur für die Darstellung im Backend. Die Sortierung musst du über deine Datenbankabfrage machen, bspw.
    PHP-Code:
    \ExamPerformModel::findAll([
        
    'order' => 'date DESC'
    ]); 

  3. #3
    Contao-Nutzer
    Registriert seit
    10.03.2016.
    Beiträge
    39

    Standard

    Hallo Spooky,

    danke für die schnelle Antwort. Wie kann ich das denn in meinem konkreten Fall lösen? Lade meine betroffenen Datensätze über
    PHP-Code:
    getRelated() 
    Hier lassen sich ja keine weiteren Optionen übergeben.

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.126
    Partner-ID
    10107

    Standard

    Dann darfst du einfach nicht getRelated verwenden sondern musst direkt mit MySQL queries arbeiten

  5. #5
    Contao-Nutzer
    Registriert seit
    10.03.2016.
    Beiträge
    39

    Standard

    Klar, das geht natürlich.
    Hat denn jemand noch eine Idee zu meiner 2. Frage von oben?
    Wie lässt sich eine manuelle Sortierung im Frontend mit Contao realisieren?

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.126
    Partner-ID
    10107

    Standard

    Von Haus aus bringt Contao bspw. Tablesorter mit (j_tablesort Template).

  7. #7
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Schau Dir mal datatables.net an, das ist sehr maechtig.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  8. #8
    Contao-Nutzer
    Registriert seit
    10.03.2016.
    Beiträge
    39

    Standard

    Hallo,
    danke für die Tipps
    Wer es (so wie ich) barrierefrei braucht, dem sei auch das Widget von Felix Nagel empfohlen.
    http://www.felixnagel.com/blog/artik...len-mit-jquery
    VG Snape

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •