Django Kategorien - MPTT vs self-referential model
Verfasst: Montag 24. Oktober 2016, 14:05
Hallo.
Ich bin gerade dabei für meinen Blog Kategorien zu programmieren.
Nach etwas online Recherche wurde sehr oft empfohlen einfach MPTT dazu zu verwenden. Ich möchte aber (aus Lerngründen) lieber so viel wie möglich selbst machen.
Mein Model sähe dann also ganz einfach so aus:
Angenommen ich hätte immer folgendes Schema: Hauptkategorie, Unterkategorie, UnterUnterkategorie:
1. Ich verstehe dass es bei relationalen Datenbanken "schwieriger" ist dies nachzubilden und es mit Performanceeinbußen verknüpft ist. Wie schlimm ist dies aber wirklich? Würdet Ihr mir definitiv davon abraten es so zu machen und doch zu MPTT zu wechseln? Oder wäre dies bei nicht mehr als 2 Unterkategorien (also 3 Level insgesamt) noch in Ordnung?
2. Angenommen ich hätte 8 Level? Wäre es dann schon so nachteilig dass auf jeden Fall(!) zu MPTT gegriffen werden sollte?
Vielen Dank schonmal
SnakeBite
Ich bin gerade dabei für meinen Blog Kategorien zu programmieren.
Nach etwas online Recherche wurde sehr oft empfohlen einfach MPTT dazu zu verwenden. Ich möchte aber (aus Lerngründen) lieber so viel wie möglich selbst machen.
Mein Model sähe dann also ganz einfach so aus:
Code: Alles auswählen
class Category(models.Model):
title = models.CharField(max_length=30, unique=True)
parent = models.ForeignKey('self', null=True, blank=True)
1. Ich verstehe dass es bei relationalen Datenbanken "schwieriger" ist dies nachzubilden und es mit Performanceeinbußen verknüpft ist. Wie schlimm ist dies aber wirklich? Würdet Ihr mir definitiv davon abraten es so zu machen und doch zu MPTT zu wechseln? Oder wäre dies bei nicht mehr als 2 Unterkategorien (also 3 Level insgesamt) noch in Ordnung?
2. Angenommen ich hätte 8 Level? Wäre es dann schon so nachteilig dass auf jeden Fall(!) zu MPTT gegriffen werden sollte?
Vielen Dank schonmal
SnakeBite