2016-10-13 5 views
1

Ich habe eine Ruby on Rails-Anwendung mit rund 300 E-Mail abonniert. Aus technischen Gründen musste ich einen großen Teil der Datenbank modifizieren. Wenn ich die alte Benutzer-E-Mail und das Passwort-Digest speichere, kann ich den alten Benutzer, der sein altes Passwort verwaltet, in meine neue Datenbank einfügen?Halten Sie alte Benutzer mit neuen Ruby on Rails-Datenbank

Passwort speichern ich die folgenden gem verwenden:

gem 'bcrypt' 

In jedem Modell Ich habe diese:

has_secure_password 

In der Migration:

class CreateUsers < ActiveRecord::Migration 
    def change 
    create_table :users do |t| 
     t.string :email 
     t.string :password_digest 
     ... 
    end 
    end 
end 

Das bin ich sparen können das Passwort einfach

Die perfekte Lösung für mich wäre, meine aktuelle E-Mail und mein Passwort zu speichern, so dass der Benutzer in der neuen Datenbank das gleiche Passwort hat. Ist das möglich?

+0

Jede Bewegung auf diesem? –

Antwort

0

Sie haben also mehrere Möglichkeiten für Sie. Wenn Sie die Benutzertabellenstruktur beibehalten möchten, können Sie einen SQL-Dump der Benutzertabelle exportieren und ihn einfach wieder in die neue Datenbank importieren, und es sollte funktionieren, als wäre nichts passiert.

sehen diese Antwort How to take backup of a single table in a MySQL database?

Sie können auch den Inhalt in eine CSV-Export dann ein Skript schreiben, die Benutzerinformationen zurück in die Datenbank zu importieren.

Ich würde aber mit der Datenbank-Dump-Lösung gehen, auch am wichtigsten BACKUP YOUR GESAMTE DATENBANK VOR HAND.

+0

Ja, tatsächlich tat ich, was Sie vorgeschlagen, ich musste nur die Tabellenstruktur aus der .SQL-Dump-Datei löschen! – ste

+0

Froh, dass es für dich geklappt hat! –