alle Dateien löschen und alle vorgenommenen Änderungen rückgängig machen? Nicht unbedingt zur DB, sondern mehr zu den Konfigurationsdateien.
Z.B. Automatisches Löschen aller Ressourcenzuordnungen für das in der Datei routes.rb gelöschte Modell/Controller und an allen anderen Stellen, an denen Änderungen vorgenommen wurden?
Vielen Dank.
Rails destroy controller lalala
Rails destroy model yadayada
Rails destroy scaffold hohoho
Rails 3.2 fügt dem Befehl eine neue d
-Verknüpfung hinzu, sodass Sie jetzt schreiben können:
Rails d controller lalala
Rails d model yadayada
Rails d scaffold hohoho
Es ist erwähnenswert, die -p-flagge hier zu erwähnen (p für vorgeben).
Wenn Sie dies dem Befehl hinzufügen, führt es einfach einen "Testlauf" durch und zeigt Ihnen, welche Dateien gelöscht werden, ohne sie tatsächlich zu löschen.
$ Rails d controller welcome -p
remove app/controllers/welcome_controller.rb
invoke erb
remove app/views/welcome
invoke test_unit
remove test/controllers/welcome_controller_test.rb
invoke helper
remove app/helpers/welcome_helper.rb
invoke test_unit
remove test/helpers/welcome_helper_test.rb
invoke assets
invoke coffee
remove app/assets/javascripts/welcome.js.coffee
invoke scss
remove app/assets/stylesheets/welcome.css.scss
Wenn Sie damit zufrieden sind, führen Sie den Befehl erneut ohne das Flag -p aus.
Rails destroy controller Controller_name
gab eine Reihe von Fehlern zurück. Um Controller zerstören zu können, musste ich verwandte Routen in routen.rb entfernen. P.S. Ich verwende Rails 3.1
Verwenden Sie Versionskontrolle (Subversion, Git, was auch immer)? Einfach umdrehen Wenn nicht - warum nicht? !!
Dies ist ein Prototyp zum Erzeugen oder Zerstören eines Controllers oder Modells in Rails.
Rails generate/destroy controller/model [controller/model Name]
zum Beispiel, wenn Sie User Controller generieren müssen
Rails generate controller User
oder
Rails g controller User
wenn der User Controller zerstört werden soll oder ob die obige Aktion .__
Rails destroy controller User
oder
Rails d controller User
Sie können Rails d model/controller/migration ...
verwenden, um die mit dem Rails-Befehl generierten Änderungen zu löschen oder zu entfernen.
Beispiel: Rails g model Home name:string
erstellt ein Modell mit dem Namen home
mit dem Attribut name
. Um die Dateien und den aus diesem Befehl generierten Code zu entfernen, können Sie den Befehl Rails d model Home
verwenden.
So löschen Sie den Controller manuell, falls der Befehl Rails d controller
nicht funktioniert:
Für Controller welcome
rm app/controllers/welcome_controller.rb
rm app/views/welcome
rm test/controllers/welcome_controller_test.rb
rm app/helpers/welcome_helper.rb
rm test/helpers/welcome_helper_test.rb
rm app/assets/javascripts/welcome.js.coffee
rm app/assets/stylesheets/welcome.css.scss
Angenommen, ich habe einen Controller mit dem Namen sample erstellt
Rails generate controller sample
Wenn ich diesen Controller zerstören muss, muss ich nur die generate mit destroy tauschen, wie in
Rails destroy controller sample.
Wenn Sie die Generierung rückgängig machen wollen, müssen Sie lediglich ' generate ' mit ' destroy '
sie können Ihre Rails g/generate controller/model/migration xxx
-Ausgabe zurücksetzen, indem Sie Folgendes verwenden:
Rails d/destroy controller/model/migration xxx
Sie können alle Dinge, die erstellt wurden, auf die gleiche Art und Weise zerstören.
Rails d controller_name (d stands for destroy)
Für Modell
Rails d model_name
sie fügen einfach d(destroy)
anstelle von g(generate)
in Ihre Migration ein.
Wenn Sie Rails verwenden, verwenden Sie Rails d controller Users
und wenn Sie Zeus verwenden, verwenden Sie zeus d controller Users
. Wenn Sie dagegen git oder SVN verwenden, setzen Sie Ihre Änderungen mit der Festschreibungsnummer zurück. Das geht viel schneller.
Sie können die Erzeugung eines Rails auf folgende Weise rückgängig machen:
Rails destroy MODEL
Rails destroy controller_name
Um das umzukehren, zerstören wir es einfach. Öffnen Sie die Terminalanwendung und wechseln Sie in das Projektverzeichnis. Geben Sie dann Folgendes ein:
Rails destroy model CamelCase
Rails destroy controller CamelCase
Wobei CamelCase ein Name eines Modells oder Controllers ist .. __ Modell, Migration und einige zugehörige Testdateien werden entfernt. (Sie können das Ergebnis in Terminal sehen, nachdem Sie den Befehl ausgeführt haben.)
Alle Generationen von Rails haben eine Vernichtung von ihnen. Wenn Sie also ein (beispielsweise) "Gerüst" genanntes "Tasks" erstellen, müssen Sie Folgendes eingeben:
Rails destroy scaffold Tasks
Ich hoffe es hilft dir.
Gerüst für ausgewähltes Modell entfernt
bin/Rails d scaffold <AccessControl> //model name
um die Erzeugung von Rails rückgängig zu machen, verwenden Sie Rails destroy
Rails destroy Model
https://guides.rubyonrails.org/command_line.html#Rails-destroy
Wir verwenden als .__ generieren. Rails generate app
. Das Erneuern einer generate
-Anweisung kann mit destroy
-Anweisung ..__ rückgängig gemacht werden. Ersetzen Sie generate
durch destroy
Rails generate app
kann geschrieben werden als Rails destroy app'
Rails ____as
Rails zerstören ____ `
Stellen Sie vor dem Zurücksetzen von Rails generate
sicher, dass Sie zuerst Rollback der Migration durchführen.
Fall 1: Wenn Sie das Gerüst wiederherstellen möchten, führen Sie diesen Befehl aus -
Rails destroy scaffold MODEL_NAME
Fall 2: Wenn Sie das Modell wiederherstellen möchten, führen Sie diesen Befehl aus -
Rails destroy model MODEL_NAME
Fall 3: Wenn Sie den Controller zurücksetzen möchten, führen Sie diesen Befehl aus -
Rails destroy controller CONTROLLER_NAME
Hinweis: Sie können auch die Verknüpfung d
anstelle von destroy
verwenden.