2017-06-15 5 views
0

Ich habe drei Modelle A, B und C und ihre Assoziationen sind A has_many B, C und B, C gehören zu A Ich habe Login und Authentifizierung für 'A' durch Verweis Michael hartl erstellt Buch. Wenn sich A anmeldet, organisiert er B und C (erstellt, aktualisiert und zerstört B und C). Jetzt möchte ich eine Anmeldung und Authentifizierung für B. wenn B Logins er auf eine andere Seite umleiten.Wie loggen Sie sich für verschiedene Rollen in Rails ein

Um dies zu erreichen, habe ich versucht, Rollen zu A und B mit Cancan Edelstein hinzuzufügen, aber ich blieb stecken, wie Login-Seite von A für B zu loggen und Redirect. Wie erreiche ich das?

Antwort

2

Wenn Sie Devise für die Authentifizierung verwenden, können Sie den after_sign_in_path_for Hook verwenden, wie in the documentation beschrieben. In dieser Methode können Sie die Logik definieren, der die Anwendung folgen soll, um den angemeldeten Benutzer auf die eine oder andere Seite umzuleiten.

Darüber hinaus sollten Sie berücksichtigen, dass einige Benutzer nicht auf bestimmte Seiten zugreifen können, und das ist, wo CanCanCan Edelstein Sinn macht. Unabhängig von der eingerichteten Umleitungskonfiguration sollten Sie verhindern, dass nicht autorisierte Benutzer bestimmte Seiten besuchen.

Verwandte Themen