kann nicht verwenden has_secure_password, password_digest error

8

Guten Abend. Ich habe ein Problem. Ich benutze has_secure_password und Ursache davon habe ich einen Fehler undefined method password_digest = 'für #',

aber ich habe diese Methode nicht !! Bitte helfen Sie, wissen Sie nicht, was zu tun ist. Ich habe gelesen, wie ich dieses Problem beheben kann, aber es hat mir nicht geholfen (

Hier ist mein Benutzermodell. Bitte helfen Sie, wenn Sie können.

%Vor%     
Pavel 13.10.2011, 18:54
quelle

4 Antworten

21

Sie haben möglicherweise vergessen sicherzustellen, dass Ihre Migration, die das Benutzermodell unterstützt, über eine Spalte für password_digest verfügt. Stellen Sie sicher, dass die Spalte existiert und dass es sich um eine Zeichenfolge handelt. Ist dies nicht der Fall, erstellen Sie eine Migration, um die Spalte hinzuzufügen.

    
ChrisAndy 20.10.2011, 17:12
quelle
3

Ich hatte das gleiche Problem, ich folgte Ссылка und mein app/Controllers/users_controllers.rb hatte keine Methode, um das Attribut zu erstellen, ich benutzte auch git, um den Arbeitscode zwischen dem tragbaren Laptop für den Zug und größeren Haus zu teilen, dies erstellte die Migrationsdatei, aber nicht angewendet, mein arbeitender Benutzercontroller ist unten.

%Vor%     
Conor 13.06.2014 16:48
quelle
1

Hey, ich folge auch RoR und komme in das gleiche Problem. Der Trick dabei ist, dass bundle exec rake db:migrate fehlschlägt und daher die Spalte password_digest nicht zur Datenbank hinzugefügt wurde. Meine Konsole beschwert sich, dass Datenbank für Benutzer bereits existiert . Ich lösche das db/development.sqlite3 manully mit "SQLite Browser". Nach dem Ausführen von bundle exec rake db:migrate wird jeder Test bestanden

    
Jacot 23.09.2012 01:14
quelle
0

Modelle mit has_secure_password speichern das Passwort in der Spalte password_digest anstelle der Spalte password . In der Tat wird keine Passwortspalte benötigt.

%Vor%     
Imran 13.03.2018 18:29
quelle