index form custom callbacks all active ruby-on-rails ruby-on-rails-3 forms authentication activeadmin

ruby-on-rails - form - custom controller activeadmin



¿Cómo personalizar la página de inicio de sesión predeterminada en ActiveAdmin? (2)

El problema

Estoy intentando personalizar la página de inicio de sesión predeterminada en ActiveAdmin, pero tengo problemas para realizar las personalizaciones.

Lo que he intentado

Un comentarista de este episodio de RailsCasts sugiere copiar este archivo a la app/views/active_admin/devise/sessions/new.html.erb y personalizarlo desde allí. Sin embargo, hacerlo no parece reemplazar el formulario de inicio de sesión predeterminado.

También traté de reemplazar devise_for :admin_users, ActiveAdmin::Devise.config con devise_for :admin_users como sugiere el comentarista, lo que parece apuntar las rutas al lugar correcto, pero tengo un montón de errores del servidor relacionados con ninguna de las variables de ActiveAdmin. reconocido en este contexto.

He buscado en los documentos, pero no he podido encontrar documentación sobre la personalización del formulario de inicio de sesión en particular.

Pregunta

¿Cuál es la mejor manera de personalizar el formulario de inicio de sesión en ActiveAdmin?


Con la configuración predeterminada de ActiveAdmin, donde el recurso Devise es admin_user , su new.html.erb debe ir en la app/views/admin_users/sessions/new.html.erb .

Una forma fácil de copiar todas las plantillas de Devise es hacer rails g devise:views admin_users , aunque resulta que ActiveAdmin viene con sus propias versiones de estas vistas: https://github.com/gregbell/active_admin/tree/master/ app / views / active_admin / idear

Si también está intentando cambiar el diseño con el que se representa el archivo new.html.erb de Devise, puede copiar el archivo de diseño desde ActiveAdmin a app/views/layouts/active_admin_logged_out.html.erb

El archivo de diseño actual utilizado para la página de inicio de sesión está aquí:

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


Primero copia todas las vistas de diseño de tu aplicación:

rails g devise:views admin_users

En segundo lugar, agregue config.scoped_views = true dentro del archivo config/initializers/devise.rb .

De esta forma, no es necesario anular las plantillas de active_admin.