Ankündigung

Einklappen
Keine Ankündigung bisher.

Kommentarsystem

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Kommentarsystem

    folgendes problem:

    ich habe einige tabellen (posts, events), deren eintrage kommentiert werden sollen. diese kommentare kommen in eine weitere tabelle comments. natuerlich muss jedem kommentar die id des kommentierten artikels zugeordnet werden. dazu gibt es in der tabelle ein feld parentid. nur wie kann ich jetzt zwischen post- und event-ids unterscheiden?

    idee 1: mehrere kommentar-tabellen: sehr unschoen.
    idee 2: posts und events in eine tabelle: noch unschoener.
    idee 3: extra feld in comments welches zwischen posts und events unterscheidet: immernoch unschoen, man denke an 2nf.
    idee 4: id encoden, so dass vorne ein e oder p steht: auch nich besser, da man jetz nich mehr direkt joinen kann sondern erst den string zerlegen muss.
    (jetz wirds abenteuerlich)
    idee 5: fuer jeden neu erstellten artikel wird automatisch ein unsichtbarer kommentar in die tabelle eingetragen. die id dieses kommentars wird beim artikel gespeichert. saemtliche kommentare speichern die id des unsichtbaren kommentars: fuer mich momentan am sinnvollsten aber um drei ecken gedacht. ausserdem unnoetiger platzverbrauch.

    wie siehts aus? weitere vorschlaege?
    Was ist validität?

  • #2
    Idee 2 und einfach eine Spalte Type als ENUM('p', 'e')

    Kommentar


    • #3
      posts und events in eigenen Tabellen, aber mit gemeinsamem auto_increment. Das kommt aus einer dritten Tabelle nur dafür.
      mod = master of disaster

      Kommentar


      • #4
        @Sunman: wie schon gesagt, die loesung is sehr unsauber, darum eher nich.
        @Waq: gute idee, aber das kann fuerchte ich sehr schnell zu inkosistenzen fuehren, oder? man koennte die id auch anderweitig speichern. in dieser tabelle muesste ja nur ein einziges feld stehen. ausserdem muss ich dann ja explizit ids vergeben, ich bin eigentlich grosser fan von auto_increment...
        Was ist validität?

        Kommentar


        • #5
          Wie sollte das zu Inkonsistenzen führen? Die IDs kommen aus einer Tabelle, die nur aus einem auto_increment-Feld besteht.
          mod = master of disaster

          Kommentar


          • #6
            Re: Kommentarsystem

            Zitat von fantast
            folgendes problem:

            idee 3: extra feld in comments welches zwischen posts und events unterscheidet: immernoch unschoen, man denke an 2nf.
            Ich denke mal, dass du mit 2nf die zweite Normalform meinst? Dann lege doch einfach in der Tabelle Kommentare einen künstlichen zusätzlichen Primärschlüssel an.

            Die Tabelle hat dann folgende Spalten:
            KommentarID, EintragID, Art (enum('p', 'e'))

            Jetzt ist alles vollfunktional von der KommentarID abhängig....

            Kommentar

            Lädt...
            X