Ich verwende Rails 3.0.9 und entwerfe für die Authentifizierung. Jetzt versuche ich die Vererbung einzelner Tabellen zu verwenden, da ich Polymorphismus verwenden muss, also habe ich zwei Klassen: UserType1 und UserType2, die von der User-Klasse erben. Ich brauche diese Devise-Instanz korrekt den current_user abhängig vom Typ des Benutzers.
Zum Beispiel
%Vor%es ist genau das, was Sie brauchen: Ссылка
Sie müssen die Anmeldemethode in Ihrem Anwendungscontroller überschreiben, ich hoffe, es hilft.
Sie müssen get_some_attribute
method in User
model
dann, um es in den Benutzer-Untertypen zu überschreiben, wie folgt:
%Vor% Dann funktioniert current_user.get_some_attribute
wie erwartet, wenn Sie mehr über das Überschreiben von Methoden in Ruby erfahren möchten, können Sie darüber lesen hier
Ich habe super
hinzugefügt, da ich angenommen habe, dass Sie eine gemeinsame Logik in get_some_attribute
haben, da sie get_some_attribute
im Benutzermodell aufruft. Sie können sie entfernen, wenn Sie sie nicht brauchen.
Viel Glück!
Tags und Links ruby-on-rails-3 ruby-on-rails devise single-table-inheritance