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

Antwort per Email an