Nested Sets - praktikable Anwendung für Seitenhierarchie
W. Felix
- programmiertechnik
Guten Abend,
ich überlege gerade, wie ich meine Seitenhierarchie am besten in einer Datenbank hinterlegen und organisieren kann. Hierfür bin ich nun auf Nested Sets gestoßen, was auf mich einen guten Eindruck macht.
Jedoch hapert es bei der Umsetzung auf meinen Aufgabenbereich.
Ich arbeite mit mod_rewrite und erhalte so praktisch jeden "Pfad-Ordner" als nächsttieferes Element in den NestedSets.
Also z.B.
pkw/bmw/allgemeine_infos
Die einzelnen "Pfadkürzel" sind in der Datenbank (MySql) jedem Eintrag der NestedSets zugeordnet, die des weiteren den Seiteninhalt, den Wert links und rechts enthalten.
Nun scheitere ich bei der Aufgabe, eine angeforderte URL korrekt aus der Datenbank zu holen. Also ich meine ich könnte ja einfach das tiefste "Pfadkürzel" nehmen und danach suchen, ich möchte aber auch den eingegebenen "Pfad" auf seine Rivchtigkeit prüfen, also ob als erstes wirklich pkw und nicht lkw angegeben wurde als überkategorie von bmw.
Des Weiteren kriege ich in meinem Kopf dann einen Knoten, wenn ich mir überlege, dass auf einer Ebene (also von der tiefe her) ein "pfadkürzel" nicht unique sein muss - es gibt z.B. bmw unter lkw und pkw.
Wie kann ich also den Pfad innerhalb einer NestedSets Struktur auf Richtigkeit überprüfen (am besten noch zur Not bei falschem "Pfad" den passendsten Artikel oder eine intelligente Suche anbinden).
Ich bin dankbar für jederlei Anregung, wie ich das jetzt wirklich unmsetzen könnte. Arbeite mit PHP und MySql ... schrecke auch nicht vor langen Artikeln zurück, die es womöglich über meine Anwendungsfrag gibt, doch ich fand bisher leider keinen.
Grüße
WF
Ich sähe es als praktischer du würdest Pfade und nicht ihre Teile speichern.
Pfade sind immerhin noch verlässliche Teile der URI und somit unique.
Mir fällt jetzt nur noch der dumme Spruch ein.
Aus einem Baum (directory) macht man eine Kommode (Tabelle). Aber aus einer Kommode macht man keinen Baum mehr.
mfg Beat
Hi,
hat niemand eine Idee, wie man es mit NestedSets löst?
Ich meine das ist ja keine ungewöhnliche Anforderung, wenn man NestedSets für die Seitenstruktur verwendet.
An die Pfade habe ich auch schon gedacht, das wäre in dem Fall einfach zu lösen, die Vorteile von NestedSets sind dann natürlich hin, und was passiert, wenn der Pfad zu groß wird, müsste ich auch erst sehen.
Des Weiteren kann ich aus Pfaden nicht so einfach geordnete Menü-Arrays erstellen, weil wie möchte ich diese ordnen.
Gruß
Hallo Selfer,
ich weiß, dass ist ein Self-Forum und ich habe auch schon Stunden im WWW mit der Suche verbracht, kann mir nicht jemand einen Denkanstoß geben, ob und wie ich das mit NestedSets lösen kann (wovon ich eigentlich ausgehe, weil das ja so viel gerade für solche Zweke verwendet wird) oder ob ich darauf umsteigen muss, die kompletten Pfade zu speichern.
Gruß