Wie sieht ein Datenmodell für ein Forum aus?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

jens hat geschrieben:
Y0Gi hat geschrieben:Die jetzige, portierte Version basiert auf Werkzeug 0.2, SQLAlchemy, Genshi und Babel.
Denkt ihr das django dafür weniger geeignet ist?
Das Toolset was wir haben hat durchaus einige Vorteile: zu Werkzeug haben wir wesentlich besseren Upstream-Kontakt, SQLAlchemy schlägt von den Features das Django-ORM recht leicht (welches bei komplizierteren Sachen sich teilweise ziemlich dumm verhält und man einige Dinge selbst simulieren muss, was es in SQLAlchemy frei Haus gibt), Genshi bietet XML-Templates (das System hat schon seit langem auf XML-Templates gesetzt, da wäre der Wechsel zu Djangos Templates ein ausreichend großer Aufwand, dass man gleich hätte auf Jinja umsteigen können) und Babel ist die für Genshi passende i18n-Lösung.

Außerdem sind wir wohl Eigenbrötler. Klar, mit Django könnte man das alles auch, aber Teil des Spaßes ist es auch neue Techniken auszuprobieren und einzusetzen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Käptn Haddock
User
Beiträge: 169
Registriert: Freitag 24. März 2006, 14:27

Für jeden User möchte ich nun festhalten, welche Beiträge er gesehen hat bzw. welche noch neu für ihn sind. Wie mache ich dies und insbesondere, wie mache ich dies einigermaßen speichereffizient?
Ich würde das über einen Vergleich des Last Login oder der letzen Aktion des Users mit dem Erstellungsdatum des Posts machen. Beiträge die danach erstellt wurden, kann er ja nicht gelesen haben. Ansonsten müsstest du ja für jeden Beitrag und jeden User einen Datensatz schreiben, was auf Dauer bei einem wachsenden Forum etws unhandlich werden dürfte.

Gruß Uwe
---------------------------------
have a lot of fun!
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

sma hat geschrieben:Für jeden User möchte ich nun festhalten, welche Beiträge er gesehen hat bzw. welche noch neu für ihn sind.
Das macht IMHO nur Sinn, wenn der User wirklich immer alle Beiträge lesen will oder das Forum sehr "klein" ist. Ansonsten wird die Liste schnell viel zu unübersichtlich.

IMHO reicht eine Funktion wie "Alle Beiträge der letzten X-Std" oder "Zeige die letzten X Beiträge"

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Nein, Sinn mach das schon. Wenn ich hier im Forum nur die Funktion "last24h" hätte wäre mir das zu wenig. Ich möchte schon wissen wo etwas neues geschrieben wurde ohne mir die Uhrzeit merken zu müssen. Ich muss ja nicht alles lesen, nur das was mich interessiert. Den Rest markiere ich dann einfach als gelesen, das ist dann ja auch aus der Tabelle gelöscht
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Ich verwalte mit meinem Google-Reader ca. 90 RSS-Feeds von Blogs um über alles mögliche auf dem Laufenden zu bleiben. Etwas als gelesen oder ungelesen zu markieren oder (mittels * oder tag) auf Wiedervorlage zu setzen ist für mich essentiell, um den Überblick zu behalten. Zum Teil lagern die Artikel Tage oder Wochen, bis ich dazu komme, sie zu lesen oder wenigstens zu überfliegen. Einfach nur die letzten 24h wäre kein Feature für mich.

PS: Warum hat dieses Forum eigentlich keinen RSS-Feed der letzten 24h. Wäre praktisch, denn dann könnte ich auch hier meinem Reader benutzen.

Stefan
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

sma hat geschrieben:PS: Warum hat dieses Forum eigentlich keinen RSS-Feed der letzten 24h. Wäre praktisch, denn dann könnte ich auch hier meinem Reader benutzen.
Weil phpBB 2.0.x das nicht unterstützt. Sorry.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

jens hat geschrieben:
Y0Gi hat geschrieben:Die jetzige, portierte Version basiert auf Werkzeug 0.2, SQLAlchemy, Genshi und Babel.
Denkt ihr das django dafür weniger geeignet ist?
Ich schon, ja. Django ist zu starr und unflexibel, austauschbare Komponenten sind da besser.
sma hat geschrieben:Y0Gi, wenn ihr ein Forum baut, wie löst ihr denn das Problem, gelesene bzw. ungelesene Beiträge pro Anwender zu verwalten?
Es gibt Tabellen, die User- und Thread-/Kategorie-ID sowie den Zeitpunkt der letzten Betrachtung speichern.
Antworten