Ergebnis 1 bis 5 von 5

Thema: metamodels eigener sql Filter

  1. #1
    Contao-Nutzer
    Registriert seit
    14.01.2013.
    Beiträge
    26

    Standard metamodels eigener sql Filter

    Moin liebe Community,
    ich suche mir inzwischen seit Tagen einen Ast ab.

    Ich verwende Metamodels und finde die Extension extrem gut. Allerdings ergibt sich für mich in der Anwendung ein Problem, welches ich bisher nicht lösen konnte:

    Ich habe eine Datenbanktabelle erstellt mit MM -> mm_supplier. In der MM sind Anbieter und zusätzlich Angebote von Anbietern eingestellt. Angebote sind Anbietern über ein select den Anbietern zugeordnet.
    In der Detailansicht eines einzelnen Anbieters möchte ich nun per SQL Abfrage die verschiedenen Angebote des jeweiligen Anbieters anzeigen lassen.

    Dieses geschieht auf einer Seite über zwei Artikel auf einer Seite alles mit Metamodels.
    Artikel 1:via auto_item den Anbieter aufrufen und im Artikel Template eine Global id setzen.
    Artikel 2:im zweiten Artikel Template initialisiertem Global Id nutzen und via Sql Filter anwenden und im Template erfasste Datensätzen filtern.

    Das Funktioniert, allerdings geht die Performance der Seite den Bach runter.

    Meine Ideen und Versuche, über Insert Tags oder Hooks oder php im zweiten Artikel der gleichen Seite einen schnelleren Seitenaufruf zu erreichen, sind bis dato gescheitert.
    Eventuell hat jemand eine Idee?

    Die Seite ist zu finden unter http://familie-heute.org. Das Problem ist zu finden unter Angebote-Liste -> Detail

    Ich würde mich über einen Tipp freuen.
    Geändert von hul (18.07.2014 um 23:13 Uhr)

  2. #2
    Contao-Nutzer Avatar von timbec
    Registriert seit
    22.09.2009.
    Ort
    Aachen
    Beiträge
    150
    Partner-ID
    7828
    User beschenken
    Wunschliste

    Standard

    Hi,

    ich habe deinen metamodels Aufbau nicht ganz verstanden, aber hast Du schon mal versucht über die /MetaModels/Factory:: ( siehe http://de.contaowiki.org/MetaModels_...ferenced_items ) zu holen?

    Grüße
    Tim

  3. #3
    Contao-Nutzer
    Registriert seit
    14.01.2013.
    Beiträge
    26

    Standard

    Moin,
    danke für deine Antwort, Tim.

    Ich habe das Problem wohl ein wenig unstrukturiert erklärt.
    Es besteht eine mm_tabelle in der sowohl Veranstalter als auch Veranstaltungen hinterlegt sind. Ob es sich um eine Veranstaltung oder um einen Veranstalter handelt, wird über eine select Zuordnung (0,1) bestimmt.
    Veranstaltungen können (müssen aber nicht) von einem Veranstalter veranstaltet werden.

    In der Listenansicht von MM tauchen daher Veranstaltungen und Veranstalter auf. In der Detailansicht über ein alias wird auf der Detailseite die jeweilige Veranstaltung bzw der Veranstalter ausführlich vorgestellt.
    Hier bekomme ich , sozusagen dynamisch, die ID des Tabelleneintrages.

    Diese ID übergebe ich jetzt in einer zweiten Listenansicht auf der gleichen Seite. Nun möchte ich einen SQL Filter mit dieser generierten Variable setzen, der mir alle Veranstaltungen des Veranstalters listet.

    Das referenzierte Objekt nützt mir daher nicht so viel, die die Referenz erst in der ersten Listenansicht (Detail) generiert wird.

    Trotzdem vielen Dank für deine Antwort.

    Nette Grüße

  4. #4
    Contao-Nutzer Avatar von timbec
    Registriert seit
    22.09.2009.
    Ort
    Aachen
    Beiträge
    150
    Partner-ID
    7828
    User beschenken
    Wunschliste

    Standard

    Aus welchem Grund packst Du das denn in eine Tabelle und trennst nicht direkt in mm_veranstalter mm_veranstaltungen?
    Dort könntest Du dann ja mit nem select/multiselect attribut beliebig hin und her verknüpfen und die ausgaben mittels referenced items so realsieren, wie du sie brauchst.

  5. #5
    Contao-Nutzer
    Registriert seit
    14.01.2013.
    Beiträge
    26

    Standard

    Hi Tim,
    danke für deine Antwort und dein Interesse.

    Ich könnte dir jetzt sehr viel über das programmatische Strukturkonzept der Seite erzählen. Kurz gefasst beruht die Entscheidung einer generellen Tabelle für Veranstalter und Veranstaltungen im Backendbereich und dem möglichst einfachen Eingabeverhalten für die studentischen Mitarbeiter des Seiten Betreibers. Über MM habe ich augenblicklich keine passendere Möglichkeit gefunden. Zumal die Mitarbeiter bisher an Typo3 und deren Erweiterung gewöhnt sind.

    Trotz alledem müßte es doch eigentlich eine Möglichkeit geben, eine dynamische Variable an einen eigenen SQL Filter in MM zu übergeben.

    Also in etwa so:
    Detail Listing auf der Detail Seite über Alias greift auf Bsp. Row ID 333 zu.
    ID wird übergeben.
    Listing Filter in zweiten Artikel der Seite wird über eigene SQL Abfrage erzeugt:
    Select id from mm_supplier WHERE veranstaltung = 1 AND ID = supplier_ID.

    Noch einmal: Es funktioniert augenblicklich, da ich erst im Template die ID Variable über eine Foreach Schleife selektiere, allerdings geht die Performance eben runter.

    Nette Grüße
    Uwe

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
  •