Hi!
On Fri, Jan 04, 2008 at 03:01:10PM +0100, Daniel Weinand wrote:
> Hallo,
> ich habe gerade versucht meine Sessions per runner script aufzuräumen.
> Das runner script sieht folgendermassen aus:
> 
> #!/usr/bin/env ruby
> require File.dirname(__FILE__) + '/../config/boot'
> 
> class SessionCleaner
>   def self.remove_stale_sessions
>     CGI::Session::ActiveRecordStore::Session.destroy_all( ['updated_at
> <= ?', 30.minutes.ago] )
>   end
> end
> 
> Wenn ich jetzt allerdings das Script per: ruby script\runner -e
> development SessionCleaner.remove_stale_sessions aufrufe
> passiert nichts. Ich bekomme keine Fehlermeldung, aber es wird auch
> nichts aus der DB gelöscht.

wo liegt denn dein script? Damit dein Aufruf funktioniert müsste die
SessionCleaner-Klasse vom Rails-Autoloader aufgefunden werden können,
d.h. bspw. in lib/session_cleaner.rb deklariert sein. Da drin sollte
dann auch kein require und keine Interpreter-Deklaration drin sein - das
macht ja alles script/runner schon.

Alternativ kannst du das SessionCleaner.remove_stale_sessions auch in
die Datei selbst reinschreiben, und dann nur den relativen Pfad zur
Datei als Argument an runner übergeben.


Grüße,
Jens 


-- 
Jens Krämer
http://www.jkraemer.net/ - Blog
http://www.omdb.org/     - The new free film database
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

Antwort per Email an