Cuando falla el login, el controlador manda ahora mismo un
flash[:notice] = “El usuario/contraseña introducidos no son
correctos”
Pero la diseñadora no quiere que el error de login salga en el flash,
sino que salga en forma de
<%= error_messages_for :usuario %>
Con el formato y ubicación similares a los errores de validación…
¿como puedo, desde el controlador, lanzar el mensaje de “El
usuario/contraseña introducidos no son correctos” en forma de error para
que la vista lo recoga con el error_messages_for? debe haber alguna
instrucción de raise error o algo asÃ, pero no la encuentro…
¿como puedo, desde el controlador, lanzar el mensaje de “El
usuario/contraseña introducidos no son correctos” en forma de error
para
que la vista lo recoga con el error_messages_for? debe haber alguna
instrucción de raise error o algo así, pero no la encuentro…
No se si lo entiendo muy bien, se trata del look & feel?
Si fuera eso no tienes por que cambiar el flujo, puedes asignar por
ejemplo a flash[:error] y crear un helper
<%= display_flash_error %>
que si flash[:error] no es blank? eche un HTML parecido para que
aplique el mismo CSS.
– fxn
P.D.: Ten en cuenta que flash es como una tabla hash, las llaves son
arbitrarias.
usuario.errors.add(:usuario_id, “El usuario introducido no es
correctos”)
JJ
Juanjo, muchas gracias, es justo lo que buscaba!!
Xavier, solucionarlo por vÃa look & feel es meterse en lÃos en mi caso,
porque el flash es igual para todas las páginas (está en
application.rhtml), y esto es sólo para la página de login.
Xavier, solucionarlo por vía look & feel es meterse en líos en mi
caso,
porque el flash es igual para todas las páginas (está en
application.rhtml), y esto es sólo para la página de login.
Tienes flash[:error] en el layout? Fijate que no es flash[:notice] eh?
Ten en cuenta que decir “el flash” es como decir “la session”.
– fxn
P.D.: Lo digo solo por el comentario, no sea cosa que no se entendiera
bien, al margen de que errors.add te cuadre mejor que esta perfecto.