Derselbe aktuelle_Benutzer für mehrere Modelle

Problem

Ich habe ein Benutzermodell und das Freiwilligenmodell, das vom Benutzermodell erbt:

<code>class User < ActiveRecord::Base
end

class Volunteer < User
end
</code>

Sie werden beide in derselben Tabelle in der Datenbank gespeichert, haben jedoch unterschiedliche Controller / Routen.

Die Routen sind:

<code>devise_for :users ....
devise_for :volunteers ....
</code>

Und das funktioniert einwandfrei, aber das Autorisierungssystem, das ich verwende, hängt von a abcurrent_user Helfer. Und das scheitert für Freiwillige daran, dass das Entwerfen schafftcurrent_volunteer für das Freiwilligenmodell.

Was ich versucht habe, ist zu setzendevise_for :volunteers, :singular => "user", und dies erzeugt einen aktuellen Benutzer, der sich auf Benutzer und Freiwillige bezieht, aber das Problem ist jetzt, dass die Routen für Freiwillige durcheinander sind.

Frage

Also meine Frage ist, gibt es eine Möglichkeit, die zu habencurrent_user Helfer, beziehen sich auf ein anderes Modell als Benutzer?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage