14

Das ProblemWie passt man die Standard-Login-Seite in ActiveAdmin an?

Ich versuche, die Standard-Login-Seite in ActiveAdmin anpassen, aber ich habe Probleme mit den Anpassungen immer durch zu gehen.

Was ich versucht habe

Ein Kommentator auf this RailsCasts episodethis file zu app/views/active_admin/devise/sessions/new.html.erb Kopieren schlägt und es von dort anpassen. Dies scheint jedoch nicht das Standard-Login-Formular zu ersetzen.

Ich habe auch versucht devise_for :admin_users, ActiveAdmin::Devise.config mit devise_for :admin_users wie der Kommentator schlägt vor, zu ersetzen, die die Routen an den richtigen Ort zu zeigen scheint, aber ich habe eine Reihe von Server-Fehlern zu keinem der ActiveAdmin Variablen in diesem Zusammenhang erkannt zu werden.

Ich habe die Dokumente durchsucht, aber ich konnte keine Dokumentation zum Anpassen des Anmeldeformulars finden.

Frage

Was ist der beste Weg, um über das Anpassen der Login-Formular in ActiveAdmin zu gehen?

+0

Der Pfad, den Sie erstellt haben, ist in Ordnung, auch wenn Sie Ihren Server nach der Änderung nicht neu gestartet haben. – matanco

Antwort

12

Mit der ActiveAdmin-Standardkonfiguration, in der die Devise-Ressource admin_user ist, sollte Ihre new.html.erb stattdessen in app/views/admin_users/sessions/new.html.erb gehen.

Eine einfache Möglichkeit ist es, alle Devisen Vorlagen zu kopieren out rails g devise:views admin_users zu tun, obwohl es ActiveAdmin mit ihren eigenen Versionen dieser Ansichten kommt stellt sich heraus: https://github.com/gregbell/active_admin/tree/master/app/views/active_admin/devise

Wenn Sie das Layout zusätzlich sind versucht zu ändern, die die Devise new.html.erb gemacht wird, mit, können Sie die Layout-Datei aus ActiveAdmin in app/views/layouts/active_admin_logged_out.html.erb

die aktuelle Layout-Datei für die Login-Seite ist hier verwendet kopieren:

https://github.com/gregbell/active_admin/blob/master/app/views/layouts/active_admin_logged_out.html.erb

+7

In meinem Fall ersetzen "app/views/active_admin/devise/sessions/new.html.erb" ist der richtige Weg –

+0

@ KeatingWang Methode für mich funktioniert. – dmastylo

+0

Ths Mann! Sie haben mir sehr geholfen! – kaleb4eg

5

Kopieren Sie zuerst alle devise Blick auf Ihre App:

rails g devise:views admin_users 

Zweite config.scoped_views = true in der config/initializers/devise.rb Datei den Trick tun hinzuzufügen.

Auf diese Weise müssen Sie die Active_admin-Vorlagen nicht überschreiben.

Verwandte Themen