[Prämisse] Rails 6.0.3.1 ruby 2.6.3
Derzeit wird eine Original-App erstellt. Zu dieser Zeit habe ich es versehentlich gemacht. Ich habe den Fehlerinhalt zusammengefasst, der beim Löschen der Tabelle users_artists und der Migrationsdatei aufgetreten ist.
Terminal.
% rails db:rollback STEP=5
Terminal.
% rails db:migrate:status
・ Als ich den Status mit dem obigen Befehl überprüfte, fand ich zur Bestätigung nur an einer Stelle ein Problem.
Terminal.
Status Migration ID Migration Name
--------------------------------------------------
up 000 ********** NO FILE **********
down 20201014111144 Devise create users
down 20201014111251 Devise create artists
down 20201014121517 Create events
down 20201020102544 Create bookmarks
↑ Der Status ist nur an einer Stelle aktiv und der Dateiname bleibt aus irgendeinem Grund NO DATEI. ↑ Das Obige ist der Inhalt der zu diesem Zeitpunkt verbliebenen Schemadatei -Die Versionsanzeige verschwand und blieb ohne zu sinken. Ursprünglich sollte dieser Dateiname eine Migrations-ID haben Ist "000" hier
[Fehlerbehebungsverfahren] (1) Erstellen Sie eine Migrationsdatei unter db / migrate mit dem neuen Namen "000_create_users_artists.rb", um den Status zu verringern. : point_right: Damit es mit dem Namen anderer Migrationsdateien identisch ist, wurde ** create ** am Anfang des Namens hinzugefügt und wie folgt beschrieben.
000_create_users_artists.rb
class CreateUsersArtists < ActiveRecord::Migration[6.0]
def change
create_table :users_artists do |t|
t.integer :user_id
t.integer :artist_id
t.timestamps
end
end
end
② Führen Sie `` `Rails db: migrate: status``` erneut aus. Wie unten gezeigt, wurde bestätigt, dass der Migrationsname des Up-Teils auf dem Terminal in "Benutzer-Künstler erstellen" geändert wurde.
Terminal.
Status Migration ID Migration Name
--------------------------------------------------
up 000 Create users artists
down 20201014111144 Devise create users
down 20201014111251 Devise create artists
down 20201014121517 Create events
down 20201020102544 Create bookmarks
③ Geben Sie den Dateinamen erneut mit dem folgenden Befehl an, um den Status herunterzufahren und auszuführen.
Terminal.
% rails db:migrate:down VERSION=000_create_users_artists.rb
④ Überprüfen Sie erneut, ob der Status der angegebenen Datei nicht verfügbar ist, und löschen Sie die unnötige Datei `` `000_create_users_artists.rb``` OK! !!
Terminal.
Status Migration ID Migration Name
--------------------------------------------------
down 000 Create users artists
down 20201014111144 Devise create users
down 20201014111251 Devise create artists
down 20201014121517 Create events
down 20201020102544 Create bookmarks
⑤ Führen Sie abschließend `` `Rails db: migrate``` aus, um die Tabelle neu zu erstellen und zu beenden.