web-dev-qa-db-fra.com

Variable ou méthode locale non définie `unconfirmed_email 'lors de l'enregistrement des utilisateurs?

Je viens d'installer Devise dans mon application, de configurer les vues et tout. Cependant, lorsque je clique sur le bouton d'inscription, j'obtiens cette erreur:

NameError in Devise::RegistrationsController#create
undefined local variable or method `unconfirmed_email' for #<User:0x00000103721b28>

Pourquoi est-ce? De plus, j'utilise tlsmail pour envoyer des e-mails via mon compte professionnel gmail. Cela pourrait également être un problème.

57
varatis

unconfirmed_email est requis pour reconfirmable. Pour une raison quelconque, cela a été activé par défaut dans config/intializers/devise.rb:

config.reconfirmable = true

Tout ce que vous avez à faire est de définir ceci sur faux.

127
varatis

Vous manquez la colonne unconfirmed_email dans db.

ajouter t.reconfirmable dans les migrations et exécutez rake db:migrate

ou si vous utilisez devise> = 2.0

t.string   :unconfirmed_email
29
Fivell