2016-04-09 10 views
1

Wie der Titel vorschlägt, möchte ich Kategorie und Unterkategorie Liste der Produkte für den Web-Shop, an dem ich arbeite, erstellen. Angenommen, es gibt eine Kategorie namens Bekleidung {Elternkategorie} => Schuhe, Schuhe .. etc {Kinderkategorie} und Schuhe werden alle Schuhprodukte haben. Wie implementiere ich das? Dh sollte ich alle Hauptkategorien unter einen Tisch legen. Jede Zeile würde dann auf eine andere Tabelle verweisen? DieseWie implementiere ich Kategorien in PHP

+0

Verwenden Sie eine vorhandene Commerce-Bibliothek zum Schreiben Ihrer eigenen? Ihnen ist bewusst, dass "Kategorie" -> Unterkategorie "eine rekursive Beziehung und keine" lineare "Beziehung ist? Imo, Ihre Datenstruktur sollte dies widerspiegeln. d. h. beschränke dich nicht auf zwei tiefe Ebenen. Jemand wird drei oder mehr Ebenen haben wollen. ; -/imo, baue es am Anfang in die Datenstrukturen ein. Sie müssen es nicht verwenden, aber es kann später erweitert werden, ohne Ihre Datenstrukturen wegzuwerfen und neu zu beginnen. Imo, es lohnt sich, einige der Open-Source-Bibliotheken zu betrachten, die dies bereits tun. –

+0

@RyanVincent Ich schreibe Code von Grund auf neu. Es ist diese rekursive Beziehung, über die ich mir Sorgen mache. – TradeRaider

+1

Wenn Sie sich für eine Kategorietabelle mit eigenen Unterkategorien entscheiden. Schaukeln und Kreisverkehr darüber. was auch immer - die Unterkategorie-Tabelle muss eine Spalte haben, die die ID ihrer Unterkategorien enthält. Sie können dies verwenden, um anzuzeigen, dass es weitere Unterkategorien gibt. Coding it: In erster Linie, während Sie es erarbeiten - halten Sie es wirklich einfach. Sie können also mehr Anfragen stellen, als Sie möchten. Was auch immer. Ich beginne immer mit etwas Einfachem, das funktioniert. ; -/Sie können es später umgestalten. Imo, für große Bäume dann "verschachtelte Sets", aber später - nicht jetzt. –

Antwort

1

ist, wie Ihr Tisch aussehen

id | item_name | parent_id | 
1 | Shoes  | 0   | 
2 | Jackets | 0   | 
3 | Formal  | 1   | 
4 | Casuals | 1   | 
5 | Party Wear | 2   | 

hier können Sie sehen, dass Ihre Hauptkategorie hat parent_id 0 und alle anderen Unterkategorien in parent_id Spalte id ihrer Eltern haben. Auf diese Weise können Sie Ihre Produkte in der gleichen Tabelle speichern, indem Sie sie mit parent_id

Beispiel: Record 1 dh Shoes ist ein Elternteil und parent_id 0, und Datensatz 3,4 sind die Unterkategorien von Datensatz 1, weil sie haben Eltern ID 1.

+0

Das macht Sinn. – TradeRaider

Verwandte Themen