• Inhalt als PDF-Datei herunterladen
  • Optimierter Druck
Thema ohne neue Antworten

TYPO3-Browser: Sortierung DB-Relationen selectboxen


Autor Nachricht
Verfasst am: 19. 05. 2011 [14:18]
Beast
S.R.
Themenersteller
Dabei seit: 10.02.2011
Beiträge: 57
Hallo,

Kurz: EIgene Extension, wie greencars => Produkt hat u.a. eine Selectbox zur Auswahl der Kategorie(n). Es können dort mehrere Einträge ausgewählt werden.

Der Browser zeigt im Frontent nun die ausgewählten Kategporien der Reihe nach an.

Bsp:
Im Backend wurde für ein Produkt in der Selectbox folgende Reihenfolge gewählt (IDs aus der Nebentabelle "Kategorien" laut Datenbank): 93,95,29,1,81,94,44

Im Frontend zeigt der Browser aber die Reihenfolge wie folgt aufsteigend an:
1,29,44,81,93,94,95

Es ist aber wichtig, dass die Anzeige, so wie im Backend eingestellt angezeigt wird.

Wo und wie kann ich dies beeinflussen? Stehe da auf dem "Schlauch".

Die Anzeige der Möglichen Kategorien lässt sich im Backend ja in der TCA einstellen. Aber ich möchte die Reihenfolge der ausgewählten Kategorien, so ausgeben, wie sie in der Datenbank beim Produkt eingetagen sind.

1000 Dank für schnelle Hilfe.
Gruss
Sebastian

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 19.05.2011 um 14:19.]
Verfasst am: 19. 05. 2011 [16:53]
Beast
S.R.
Themenersteller
Dabei seit: 10.02.2011
Beiträge: 57
Habe eben in den Tiefen der Tutorials einen eintrag gefunden, in dem erklärt wird, wie man die Sortierung mittels MM-Relation vornimmt.

Geht das also nur, wenn man Haupt und Nebentabelle mit einer MM-Relation anlegt? Muss ich jetzt meine gesamten Produkte umscfhreiben, die ich bereits angelegt habe???

Kann man nicht im Falle der "normalen" Relation die Kommaseparierte Liste in der Datenbank zur Sortierung heranziehem??
Verfasst am: 19. 05. 2011 [20:30]
Beast
S.R.
Themenersteller
Dabei seit: 10.02.2011
Beiträge: 57
Hallo,

also Falls jemand ein ähnliches "Problem" hat:

1. Eigene Extension
2. Nebentabelle: Eigenschaft eines Produktes
3. Hauptabelle: einzelnes Produkt
4. In der Haupttabelle soll ein Feld eine Datenbank-Relation zur Nebenstabelle haben, wobei:
- die Eigenschaften eines Produktes dem Produkt via Selectbox zugeordnet werden soll.
- es sollen mehrere Eigenschaften eines Produktes zuordbar sein
- die Eigenschaften sollen im Frontend so sortiert werden, wie im Backend beim einzelnen Produkt zugeordnet.

Lösung:
Beim entsprechendem Feld beim Produkt:
Datenbank Relation => MM-Relation

Somit wird eine neue Tabelle angelegt, in der die einzelnen Eigenschaften eines Produktes abgelegt werden. Jede Eigenschaft bekommt automatisch ein "sorting"-Wert, entsprechend der sortierung in der selectbox.
bsp: ( uid_local: 1 | uid_foreign: 20 |tablename|sorting: 1 )

nun kann man die Ausgabe im Frontend sortieren.
In meinem Beispiel ist die "tx_jewel_stone" die nebentabelle mit den Eigenschaften
und die "tx_jewel_main_stone_mm" die MM-Tabelle auf die das Feld "tx_jewel_main.stone" aus der haupttabelle verweist

TYPOSCRIPT
views {
    list {
      1 {
        select (
        #... 
        )
        orderBy {
          tx_jewel_stone (
          SELECT    tx_jewel_stone.uid   AS 'uid',
          tx_jewel_stone.title AS 'title'
          FROM      tx_jewel_stone,
          tx_jewel_main_stone_mm
          WHERE     tx_jewel_main_stone_mm.uid_local    = ###UID_LOCAL###
          AND       tx_jewel_main_stone_mm.uid_foreign  = tx_jewel_stone.uid
          ORDER BY  tx_jewel_main_stone_mm.sorting
          )
        } 
}
}
}


[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 19.05.2011 um 20:32.]



Powered by TYPO3 und mm_forum Extension

  • Inhalt als PDF-Datei herunterladen
  • Optimierter Druck