2012-07-10 1 views
8

Nach einer Benutzeranmeldung möchte ich dieses Ereignis manuell protokollieren und eine Zählerspalte in der Datenbank inkrementieren.Hat das Gerät einen 'Rückruf'?

Gibt es etwas wie in Devise? So wie ActiveRecord 's before_save?

Antwort

17

Devise verwendet Warden hinter den Kulissen und Warden versorgt Sie mit einer Reihe von Callbacks:

https://github.com/hassox/warden/wiki/callbacks

Werfen Sie einen Blick auf die after_authentication Rückruf. Das ist es wonach Sie suchen.

Code:

Warden::Manager.after_authentication do |user, auth, opts| 
    # your code here.. 
end 

können Sie einfach eine neue initializer-Datei erstellen und den Code dort setzen. (Wie /config/initializers/warden_callbacks.rb)

+0

Wo sollte ich diese Rückrufe schreiben? –

+2

Sie können einfach eine neue Initialisierungsdatei erstellen und den Code dort ablegen. (Wie '/ config/initializers/warden_callbacks.rb') – Tigraine