Contao-Camp 2024
Ergebnis 1 bis 5 von 5

Thema: Filter auf Mehrfachauswahl

  1. #1
    Contao-Nutzer
    Registriert seit
    14.03.2013.
    Beiträge
    56

    Standard Filter auf Mehrfachauswahl

    Hallo,

    ich habe ein MM mit einen Attribut vom Typ Mehrfachauswahl erstellt. Nun möchte ich einen Filter für die Frontendausgabe erstellen. In der Frontendausgabe sollen dann nur die Datensätze angezeigt werden, die ich per Mehrfachauswahl selektiert habe.

    Ich habe einen Filtereintrag vom Typ -eigenes SQL- mit dem Eintrag 'select * from [tabelle] where [attribut]=1' erstellt. Wenn ich dann den Filter in den 'anzuwendenden Filtereinstellungen' für den Elementtyp 'MetaModel-Liste' auswähle, dann bekomme ich folgende Meldung:

    Fatal error: Uncaught exception Exception with message Query error: Unknown column 'kalendername' in 'where clause' (select * from mm_kalender_werte where kalendername=1) thrown in …\system\libraries\Database.php on line 686

    Den Fehler kann ich auch nachvollziehen, da ich in der Tabelle 'mm_kalender_werte' die Spalte 'kalendername' auch nicht finde. Die Eingabe im Backend funktioniert aber einwandfrei, es werden alle Tags angezeigt. Wo werden die Werte für die Mehrfachauswahl 'kalendername' gespeichert?

  2. #2
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Kann das vielleicht mit dem URL-Parameter im Filter zu tun haben ?
    Ich weiß nur, daß ich da noch Probleme hatte. Ich gebe momentan immer selber einen URL-Parameter ein, gehe dann in das Filtermodul und setze das Häkchen neu für meinen Filter. Dann gibt es keine Probleme. Aber ob das damit etwas zu tun hat, keine Ahnung.

  3. #3
    Contao-Nutzer
    Registriert seit
    14.03.2013.
    Beiträge
    56

    Standard

    Moin,

    ich muss zugeben, ich weis noch gar nicht, wie das mit dem URL-Parameter funktioniert. Ich dachte immer, dass der für Weiterleitungen gedacht ist.

    Ich versuche mein Problem noch einmal detaillierter zu beschreiben:

    - Ich habe ein MM mit Kalendernamen.
    - Dann habe ich ein 2.MM in das ich ein Attribut "Mehrfachauswahl" aus dem 1.MM Kalendernamen einbinde.

    - Nun erstelle ich meine Datensätze im 2.MM und gebe per Mehrfachauswahl jeweils an, für welchen Kalender der Eintrag gültig ist.
    - Für das FE erstelle ich eine MetaModel-Liste mit den Einträgen aus dem 2.MM.
    - Bis hierher alles gut :-)

    Nun kommt mein Problem:

    Ich habe mehrere Kalenderansichten. Nun möchte ich einen Filter für das 2.MM erstellen, so dass nur die Einträge im FE angelistet werden, die zu dem entsprechenden (per Mehrfachauswahl definierten) Kalender passen. Ich dachte, es geht per SQL, aber ich finde im in der 2.MM Tabelle das Feld 'Kalendernamen' nicht!? Das funktioniert bei Mehfachauswahl-Attributen offensichtlich anders.

    Was für einen Filter muss ich erstellen, damit ich die Einträge nach den Kalendernamen filtern kann? Es soll fest vorgegeben werden (ohne Auswahl im FE).

  4. #4
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Tags speichern ihre Bezüge in der tl_metamodels_tag_relation Tabelle. Du musst also einen SQL Filter erstellen, der die Ids in Relation zu dieser Tabelle auflistet.
    Hier ein Beispiel für ein Tags Feld mit Quelle die tl_page.

    Code:
    SELECT mm.* FROM {{table}} AS mm WHERE mm.id IN
    (
    SELECT tag.item_id 
    FROM tl_metamodel_tag_relation AS tag 
    WHERE tag.value_id={{page::id}} GROUP BY tag.item_id
    )
    Aber ich denke ohne einen GET Parameter etc. wirst Du nicht weit kommen. Du musst dem Filter irgendwie mitteilen, welcher Bezug gerade aktiv ist => also vorfiltern.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  5. #5
    Contao-Nutzer
    Registriert seit
    14.03.2013.
    Beiträge
    56

    Standard

    Hallo,

    genau danach hatte ich gesucht. Habe es eingebaut und es funktioniert wie gewünscht
    Vielen Dank.

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
  •