2012-10-08 30 views
7

¿Hay alguna manera de apuntar el autenticador Devise a mi formulario de inicio de sesión personalizado? La forma estándar, sin estilo, no se puede usar (Faltan campos, arroja excepciones en el envío, de hecho se estrelló mi tiempo de ejecución una vez) y simplemente no se ve bien. Tengo un formulario 100% utilizable, uno que realmente registra a las personas, pero si se comete un error, aparece el formulario estándar, que también carece de un mensaje de error. Algo así como "Cuando se le pide que presente un formulario de inicio de sesión, render /views/sys/login.html.erb, y en caso de error, regrese a esa vista y escriba el mensaje de error" NOTA: Ya he intentado lo siguiente, desde otro preguntaDiseñar formulario de inicio de sesión personalizado

devise_for :users, :path => '', :path_names => {:sign_in => "system/login", :sign_out => "logout", :sign_up => "register" } 

y esto simplemente sobrescribe mi forma

(mi /system/ de HTTP obtiene los archivos del directorio de /sys/ puntos de vista, por lo http://localhost:3000/system/login privaría /views/sys/login.html.erb)

EDIT: nunca desarrolló una aplicación de rieles que usa inicio de sesión o autenticación con formularios web (solo el sta ándar autenticación HTTP)

Respuesta

34

Puede mover idear vistas a su directorio de puntos de vista utilizando el siguiente comando (desde su raíles raíz del proyecto):

rails g devise:views 

esto creará devise directorio en su app/views/. Allí obtendrá todas sus vistas y podrá personalizarlas como prefiera. Para personalizar el formulario de inicio de sesión, debe modificar el archivo sessions/new.html.*. * puede ser .erb o .haml u otra cosa

+3

@Josh En el futuro, lea el archivo léame de los complementos que utiliza. Devise tiene casi todas las preguntas respondidas (incluida la suya) aquí: https://github.com/plataformatec/devise – richardaday

+0

Creo que leí todo el archivo Léame y no encontré esto documentado. Mis disculpas. – Becca

+0

¿Hay alguna manera de hacer algo similar para diseñar modelos y controladores? ¿Cuál es la forma más simple de modificar esos? –

Cuestiones relacionadas