2014-10-25 12 views
6

pezzo di codice su GitHub: http://bit.ly/ZMSJXQRails 4, Devise - Messaggi di errore su Login non stanno funzionando properply

1) su login, ottengo alcun messaggio di errore se:

  • email doesn 't esistono in db
  • password è vuota
  • password è errata

devise_error_messages! vuoto come resource.errors vuoto. Sembra che la risorsa non venga convalidata. Perché?


2) Se corro resource.valid? poi resource.errors rendimenti :email=>["has already been taken"], :password=>["can't be blank"]

ricevo messaggi di errore ma non sono corrette. 'E-mail è già stata presa' non ha senso al momento dell'accesso. Perché?

(Iscriviti, Ripristina password ecc funzionano bene.)

+0

Avete provato con devise_error_messages helper di testamentaria! ? –

+0

Sì, restituisce una stringa vuota. – Webspirit

+0

@Helen come hai ideato? Puoi pubblicare il codice del modello? – Mandeep

risposta

10

devise_error_messages! è solo un aiuto per restituire un elenco formattato di resource.errors. Tuttavia, alcuni messaggi di errore sono impostati nell'oggetto flash di rails. Da qualche parte nel layout si dovrebbe rendere tali messaggi flash:

<%- flash.each do |name, msg| -%> 
    <%= content_tag :div, msg, id: "flash_#{name}" %> 
<%- end -%>