Ich habe eine Reihe von Daten in meine Tabelle eingefügt, indem ich db/seed.rb
file bearbeite und rake db:seed
command ausführe. Ohne es zu wissen, habe ich ein paar falsche Informationen in diese Zeile geschrieben. Daher möchte ich die zuvor hinzugefügte Datenzeile entfernen. Gibt es einen Rake-Befehl für dasselbe wie rake db:rollback
für rake db:migrate
.
Es gibt ein paar Aspekte:
1: Sie möchten die Startdaten ändern, wenn keine anderen Daten in der Datenbank vorhanden sind:
Sie sollten die rake db:seed
nach dem Aktualisieren der seed.rb-Datei einfach wiederherstellen. Stellen Sie sicher, dass Sie MyModel.delete_all
haben, bevor Sie versuchen, dem Modell etwas hinzuzufügen.
2: Sie möchten die Startdaten ändern, aber der Datenbank werden weitere Daten hinzugefügt
Das ist ein bisschen schwieriger. Oft ist es am einfachsten, die Daten manuell zu ändern, entweder mit rohen SQL-Anweisungen oder mit Tools wie PhpPpAdmin , PhpMyAdmin usw.
Nun gibt es eine Möglichkeit, dies zusammen zu hacken, und das wäre ein Voodoo in der Datei seed.rb. So könnten Sie rake db:seed deseed=true
ausführen, dann in Ihrem seed.rb:
Sie könnten sogar richtig verrückt werden und so etwas tun:
%Vor%Tags und Links ruby-on-rails undo seed