2016-04-27 11 views
5

Ich möchte mit Devise normale Nicht-Admin-Benutzer mit demselben Benutzermodell anmelden. Also habe ich die Rollen-ID als weiteres Attribut verwendet und alles funktioniert gut. Die Herausforderung besteht darin, dass ich die benutzerdefinierte Anmeldeseite, Registrierungsseite und andere verwandte Seiten für den Frontend-Benutzer erstellen muss. Die aktuelle Route Datei ist:Wie verwende ich Devise und ActiveAdmin für den gleichen Benutzer mit einer anderen Anmeldeseite?

Rails.application.routes.draw do 
    devise_for :users, ActiveAdmin::Devise.config 
    ActiveAdmin.routes(self) 
end 

Da ich die neue Login-Formular erstellen möchten und wollen die Steuerung außer Kraft zu setzen I devise_for hinzufügen: Benutzer aber es gibt mir eine Fehler Route definiert. Wie kann ich den Konflikt lösen?

Auch ist unter aktiver Admin-Einstellung:

config.authentication_method = :authenticate_user! 
config.current_user_method = :current_user 

Ich möchte Login-Seite anpassen und Seite-Controller anmelden, weil ich einige Dinge hinzufügen müssen Formular anzumelden.

+0

Sie können Benutzermodell mit Admin-Modell erben und andere Routen für Admin können Sie meine Repo beziehen, wo ich diese Funktion implementiert https://github.com/uzaif313/projecttodo – uzaif

+0

Ich benutze nicht AdminUser, ich habe nur User Model –

+0

sind Sie verklagt aktive Admin oder Rails admin: –

Antwort

1

Sie können ActiveAdmin in der active_admin.rb Config überschreiben die gleiche User Modell in Ihrer Anwendung Sie verwenden zu verwenden:

Also, wenn Ihre primäre devise Umfang ist user:

In active_admin.rb

ActiveAdmin.setup do |config| 
# ... 
    config.authentication_method = :authenticate_user! 
    config.current_user_method = :current_user 
# ... 

http://activeadmin.info/docs/1-general-configuration.html

+0

Dies ist nicht das Problem, es funktioniert gut. Problem ist, dass die Site derzeit bei example.com/admin eingeloggt ist, aber ich möchte eine andere Anmeldung für den normalen Benutzer bei example.com. Außerdem möchte ich einige Dinge in der Anmeldeform für normale Benutzer überschreiben. Wie könnte ich das tun? –

+0

antony hast du meinen Punkt verstanden? –

Verwandte Themen