Ich konvertiere derzeit ein vorhandenes benutzerdefiniertes Content-Management-System von der Verwendung von MySQL zu MongoDB. Das CMS hat Seiten, die einen Titel- und Körperinhalt haben und in einer Tabelle mit der Bezeichnung pages
gespeichert sind.Verknüpfen von Menüelementen mit Seiten in MongoDB
Das CMS verfügt auch über mehrere Menüs, die von den Website-Administratoren bearbeitet werden können und in einer Tabelle mit der Bezeichnung menus
gespeichert sind. Jeder hat eine eindeutige ID und Links, die in einer Tabelle namens menu_links
gespeichert sind.
In menu_links
gibt es eine Spalte, die angibt, ob die Menüverknüpfung zu einer Seite oder URL ist und eine Spalte mit der ID der verknüpften Seite oder NULL
wenn es sich um eine URL handelt. Dadurch wird verhindert, dass die Menü-URLs bei einer Änderung der URL der Seite unterbrochen werden.
Alles, was ich für MongoDB finden kann, ist das Einbetten von Dokumenten innerhalb eines anderen, was zu doppelten Daten für Menüs und einem sehr schwierigen System führen würde. Wäre es angemessen, die ID einer Seite mit dem Menüpunkt zu verknüpfen?
MongoDB gemeint ist nicht relationale Datenbank, so dass Sie Daten unnormalise müssen. NoSQL es ist keine gute Wahl, wenn Sie viele Beziehungen haben Von dem, was ich verstanden habe, können Sie 'Menüs' und' menu_links' Tabellen –
@AdamW kombinieren. Ich verstehe das und werde es tun, aber ich muss wissen, wie man angibt, auf welchen Link eine Seite bezogen ist. –