Es ist ein komplettes Muskeltrainingsset, das auch als Erinnerung dient, um sich an die DB-Operationen von Ruby on Rails zu gewöhnen.
Ich denke, dass das Verfahren zum Löschen einer Tabelle für Anfänger, einschließlich mir, etwas kompliziert ist, daher hoffe ich, dass es für wiederholtes Üben nützlich sein wird.
Es wird davon ausgegangen, dass die Datenbank bereits in Ihrer Rails-App installiert ist. Wenn Sie die Datenbank noch nicht erstellt haben, bereiten Sie die Datenbank bitte mit "Rails db: create" vor.
Ruby 2.7.2 Rails 6.0.3
Wechseln Sie zunächst vom Terminal in das Verzeichnis, in dem sich die Rails-App befindet.
console
>CD (Ordneradresse)
Erstellen Sie eine Migrationsdatei für die Modellerstellung. (Beispiel: Modellname "Benutzer", Feldname "Name", "Adresse", "Alter")
console
> rails g model User name:text address:text age:integer
Zu diesem Zeitpunkt werden eine Klassendatei und eine Migrationsdatei erstellt, die das "Benutzer" -Modell definieren, es werden jedoch keine Tabellen generiert.
Zum Generieren der Tabelle ist eine Migration erforderlich.
console
> rails db:migrate
Dadurch wird eine "Benutzer" -Tabelle basierend auf dem "Benutzer" -Modell erstellt.
__ * Der Tabellenname unterscheidet sich vom Modellnamen aufgrund der Schienenbenennungskonvention __. Referenz: "Ich habe versucht, die Namensregeln des Rails DB-Modells zusammenzufassen" https://qiita.com/seri1234/items/8ca4b52d82390929195f
Starten Sie die Rails-Konsole.
Schienenkonsole
> rails console
Fügen Sie der neuen Zeile einen Datensatz hinzu.
Schienenkonsole
irb(main):001:0> user = User.new
irb(main):002:0> user.name = "John Smith"
irb(main):003:0> user.save
Stellen Sie sicher, dass der Datensatz hinzugefügt wurde.
Schienenkonsole
irb(main):004:0> users = User.all
Löschen Sie nach der Bestätigung den erstellten Datensatz. (Das Argument von find () ist der Index des Datensatzes)
Schienenkonsole
irb(main):005:0> User.find(1).destroy
Beenden Sie nach dem Löschen des Datensatzes die Rails-Konsole und kehren Sie zum Terminal zurück.
Schienenkonsole
irb(main):006:0> exit
Löschen Sie zunächst die Datei, die beim Erstellen des Modells erstellt wurde.
console
> rails destroy model User
Dadurch wird das "Benutzer" -Modell entfernt.
__ Bitte beachten Sie, dass zu diesem Zeitpunkt noch eine "Benutzer" -Tabelle vorhanden ist. __ __
Erstellen Sie als Nächstes eine Migrationsdatei zum Löschen der Tabelle. ("Drop_table_users" kann ein beliebiger Name sein)
console
> rails generate migration drop_table_users
Eine Migrationsdatei mit dem Namen "~ drop_table_users.rb" mit den Nummern am Anfang wird unter "app name / db / migrate /" erstellt.
Öffnen Sie diese Datei mit einem Texteditor, fügen Sie einen Befehl zum Löschen der Tabelle in "def change" hinzu und speichern Sie sie durch Überschreiben.
1**********9drop_table_users.rb
class DropTableUsers < ActiveRecord::Migration[6.0]
def change
#Fügen Sie eine Zeile darunter hinzu
drop_table :users
end
end
Führen Sie die Migration durch.
console
> rails db:migrate
Die Tabelle wird gelöscht, und der Vorgang wird abgeschlossen.
Recommended Posts