Frage

Ich bin die Schaffung eine Online-Blog-Website und für jede Blog-Post, würde Ich mag die Benutzer müssen in der Lage sein, ihre eigene Kategorie erstellen / bearbeiten / löschen, damit sie ihren Beitrag kategorisieren können.

Was im Allgemeinen ein gutes Datenbank-Design für Benutzer generierte Kategorien betrachtet wird?

Das ist mein Vorschlag Tabellenentwurf. (Gibt es einen Namen für diese Art von db?)

USER_TABLE
user_id (pk), user_name

CATEGORY_TABLE
category_id (pk), category_name

USER_CATEGORIES
user_id (fk), category_id (fk)

Vielen Dank für die Unterstützung aus. Ich bin zuversichtlich, es gibt eine Post irgendwo in Bezug auf das, aber ich war nicht in der Lage, es zu finden. Wenn dies ein Betrogene ist lass es mich wissen und ich werde diese Frage entfernen.

War es hilfreich?

Lösung

Dies ist eine viele zu viele Beziehung. Dies würde es ermöglichen jedem Benutzer potenziell viele verschiedene Kategorien haben und jede Kategorie, um potenziell viele verschiedene Benutzer haben. Dies scheint ein nützliches Modell für das, was Sie zu tun versuchen.

Andere Tipps

Ich denke, Ihr Schema sieht gut aus. Sie sind die Kategoriebeschriftungen in einer Tabelle zu halte Doppelarbeit zu vermeiden und dann zu den Benutzern, ihre IDs nur zuweisen.

Wenn das, was Sie versuchen, für jeden Benutzer „private“ Kategorien haben zu tun ist, dann ist das in Ordnung. Wenn auf der anderen Seite Kategorien öffentlich sein sollen (sth Tags auf Stackoverflow mag), dann können Sie eine weitere Option in Betracht ziehen - <-> nicht vom Benutzer zu speichern Kategorie Beziehung, anstatt Feld use_counter zu Kategorietabelle und Verwendung hinzufügen löst es zu erhöhen, wenn Kategorie sein verwendete (Blog-Eintrag klassifiziert) oder -abnahme, wenn es „befreit“ (Blog-Eintrag gelöscht / seine Kategorie wird entfernt). Wenn die use_counter 0 erreicht -. Die Kategorie entfernen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top