Hi Stefan,
Hier ein Paar Ideen ...
On 20.11.2009, at 04:04, Stefan Botzenhart <s...@basiszwo.com> wrote:
Hallo Liste,
ich möchte gerne im Admin-Bereich meiner Anwendung einen User-Log ha
ben. Dieser soll die letzten Aktionen des eingeloggten Users speiche
rn und diese auf Wunsch dem eingeloggten User darstellen. Sinn des G
anzen ist einfach, dass der User sieht, was er seit seinem letzen Lo
gin alles gemacht hat. Also nur eine Komfort-Funktion. Denkbar wäre
auch, dass man die letzten X Aktionen speichert. Ich dachte daran, d
ie flash Messages zu speichern, da dieser für den Benutzer wohl am A
ussagekräftigsten sind.
Zusätzlich könntest du z.B. ein Mapping von Controller + Action zu
einer "Aktion " anlegen, also z.b. PostsController#Index mappt auf den
String "Liste der Posts angezeigt". Könnte man z.b. als separate yml
Datei machen oder mit einem Makro, das man in den Controllern aufrufen
kann.
Ich würde für diese Aktionen ein neues Modell anlegen, das du von
verschiedenen stellen der App. aus Aktionen anlegen kannst. So ist das
speichern und laden auch an einer Stelle im Code verpackt, und
isoliert testbar.
Nun die Frage, wie man sowas optimal umsetzt?
Natürlich kann ich die Daten einfach in eine Datenbank schieben und
dann per Cron immer nur die letzten X behalten.
Ich stelle mir die Frage, ob es nicht vielleicht eine bessere /
coolere Lösung dafür gibt (Cookies oder was auch immer)?
Hat sowas schon mal jemand gemacht? Wie gesagt, prinzipiell möchte i
ch die Daten nur für die Dauer einer Login-Session speichern.
Klingt erstmal nach einem problem für einen (mem)cache ... durch die
begrenzte TTL fallen die alten einträge von selbst raus.
Aber Problem: wenn du alle Einträge in einen key abreibst, verfallen
die auch gemeinsam. Wenn du alle in verschiedene schreibst, musst du
dir irgendwo die kess merken, und evtl. Jeden key einzeln holen.
(zumindest meinem begrenzten memcached wissen nach). Wenn du
experimentierfreudig bist, kannst du dir mal redis anschauen.
Viele grüße,
Phillip
_______________________________________________
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug