web-dev-qa-db-de.com

Gerüst in Rails

Gibt es eine Möglichkeit, die Auswirkungen eines Gerüstbefehls in Rails rückgängig zu machen?

483
Daniel

First Wenn Sie die vom Befehl scaffold generierten Migrationen bereits ausgeführt haben, müssen Sie zuerst ein Rollback durchführen.

rake db:rollback

Sie können Gerüste erstellen mit:

Rails generate scaffold MyFoo 

(oder ähnlich), und Sie können zerstören/rückgängig machen es mit

Rails destroy scaffold MyFoo

Dadurch werden alle von generate erstellten Dateien gelöscht, jedoch keine zusätzlichen Änderungen, die Sie möglicherweise manuell vorgenommen haben.

761
Rishav Rastogi

Rishav Rastogi hat recht und mit Rails 3.0 oder höher ist es:

 Schienen bilden ein Gerüst ... 
 Schienen zerstören das Gerüst ... 
167

Sie können alles, was Sie getan haben, rückgängig machen

Rails generate xxx

Durch

Rails destroy xxx

Dies gilt zum Beispiel für Generatoren für Migration, Gerüst, Modell ... usw

40
thekindofme

Wenn Sie nur die Dateien sehen möchten, die ein Generator erstellt, können Sie die Generatoroption --pretend oder -p übergeben.

13
Sudhanshu Arya

Der beste Weg ist:

destroy rake db:  rake db:rollback

Für Gerüst:

Rails destroy scaffold Name_of_script
10
user917158

zum ersten Mal können Sie Ihre Datenbankmigration überprüfen, wenn Sie ein Gerüst erstellt haben. Sie müssen sie zerstören, um Ihre Datenbank zu bereinigen

rake db:rollback

dann

Rails d scaffold
8
dedennufan
Rails d scaffold <scaffoldname>

Stellen Sie außerdem sicher, dass Sie die durchgeführte Migration entweder durch Rollback oder auf eine bestimmte Version rückgängig machen.

8
RageCore

Schienen zerstören Namen

rake db:rollback
4
starbuck

So generieren Sie ein Gerüst:

Rails generate scaffold xyz

So stellen Sie das Gerüst wieder her:

Rails destroy scaffold xyz
4
uma

Zum Erzeugen von Gerüsten in Rails -

Rails generate scaffold MODEL_GOES_HERE

Zum Rückgängigmachen des Gerüsts in Rails -

Rails destroy scaffold MODEL_GOES_HERE
3
Amit Suroliya

Rollback empfehlen Geben Sie zuerst Ihr Terminal ein.

rake db:rollback

Zerstörungsgerüst hinzufügen (das 'd' steht für 'zerstören')

Rails d scaffold name_of_scaffold

Viel Spaß mit Ihrem Code.

2

sie müssen auch Migrationen rückgängig machen, nachdem Sie das Gerüst zerstört haben

Rails destroy scaffold 'scaffoldname'
rake db:rollback
2
Bhargav Mehta

Gehen Sie also wie folgt vor, um das Gerüst in Rails) rückgängig zu machen. 4. Führen Sie den Befehl wie folgt aus:

  1. Rails d scaffold FooBar
  2. rake db:rollback wenn du_gelaufen bist _rake db:migrate nach dem Erstellen über Gerüst?

Das ist es!

Prost!

2

Rails [Option] Scaffold Scaffold_Name

Option

g    generate
d    destroy

Wenn Sie tun

Rails g  scaffold myFoo

Dann kehren Sie es mit zurück

Rails d scaffold MyFoo
1
krishnar

Ja, das scaffold selbst und all die Dinge, die es verschmelzen.

Der Befehl destroy ist das Gegenteil von generate und macht einen rückgängig. Übergeben Sie einfach den Namen wie bei generate und es wird aus Ihrem Projekt entfernt:

Rails generate scaffold posts title:string content:text
Rails destroy scaffold posts title:string content:text
1

sie müssen die Migrationen zuerst rückgängig machen, indem Sie rake db: rollback (falls vorhanden) ausführen. Dann zerstören Sie das Gerüst, indem Sie

Rails d scaffold foo
1
Manish

Zuerst müssen Sie rake db: rollback ausführen, um den Tisch zu zerstören
Wenn Sie bereits ausgeführt haben rake db: migrate und dann können Sie ausführen

Rails d Gerüstmodell

1
Shoaib Malik

anbieter eine andere lösung basierend auf git

starte ein neues Projekt

Rails new project_name
cd project_name

initialisiere Git

git init
git commit -m "initial commit"

ein Gerüst schaffen

Rails g scaffold MyScaffold
rake db:migrate

rollback das Gerüst

rake db:rollback
git reset --hard
git clean -f -d
1
Ray Lee

benutze das

Rails d scaffold MODEL_NAME

rake db:rollback
1
vipin

So erstellen Sie das Gerüst:

Rails generate scaffold abc

So stellen Sie dieses Gerüst wieder her:

Rails destroy scaffold abc

Wenn Sie die Migration ausgeführt haben, führen Sie einfach ein Rollback durch

rake db:rollback STEP=1
1
nitanshu verma
Rails g scaffold MyFoo 

zur Erzeugung und

Rails d scaffold MyFoo

zum entfernen

0

Jedes Mal, wenn Sie Rails g Ausführen, können Sie dies rückgängig machen, indem Sie Rails d (Destroy) ausführen, um das, was Sie generiert haben, zu entfernen. Wenn Sie bereits rake db:migrate Ausgeführt haben, müssen Sie vor dem Zerstören rake db:rollback Ausführen :)

0
Maddie

Fall 1: Wenn Sie nur diesen Befehl ausführen, um ein Gerüst zu generieren -

Rails generate scaffold MODEL_NAME FIELD_NAME:DATATYPE

Ex - Rails generate scaffold User name:string address:text

aber bis jetzt hast du keinen befehl für migrationen wie ausgeführt

rake db:migrate

dann solltest du nur diesen befehl ausführen müssen wie -

Rails destroy scaffold User name:string address:text

Fall 2: Wenn Sie bereits (Scaffold and Migration) mit folgenden Befehlen ausführen:

Rails generate scaffold User name:string address:text

rake db:migrate 

Dann sollten Sie zuerst einen Rollback-Migrationsbefehl ausführen und dann das Gerüst wie unten beschrieben zerstören müssen.

rake db:rollback

Rails destroy scaffold User name:string address:text

Auf diese Weise können wir das Gerüst aufheben. Wir können auch d für destroy und g für generate als Abkürzung verwenden.

0
Manoj Kumar

Wenn wir ein Gerüst generieren, werden folgende Dateien erstellt:

Befehl: Rails generate scaffold Game

Dateien erstellt:

>       invoke  active_record
>       create    db/migrate/20160905064128_create_games.rb
>       create    app/models/game.rb
>       invoke    test_unit
>       create      test/models/game_test.rb
>       create      test/fixtures/games.yml
>       invoke  resource_route
>        route    resources :games
>       invoke  inherited_resources_controller
>       create    app/controllers/games_controller.rb
>       invoke    erb
>       create      app/views/games
>       create      app/views/games/index.html.erb
>       create      app/views/games/edit.html.erb
>       create      app/views/games/show.html.erb
>       create      app/views/games/new.html.erb
>       create      app/views/games/_form.html.erb
>       invoke    test_unit
>       create      test/controllers/games_controller_test.rb
>       invoke    helper
>       create      app/helpers/games_helper.rb
>       invoke      test_unit
>       create        test/helpers/games_helper_test.rb
>       invoke    jbuilder
>       create      app/views/games/index.json.jbuilder
>       create      app/views/games/show.json.jbuilder
>       invoke  assets
>       invoke    coffee
>       create      app/assets/javascripts/games.js.coffee
>       invoke    scss
>       create      app/assets/stylesheets/games.css.scss
>       invoke  scss
>       create    app/assets/stylesheets/scaffolds.css.scss

Wenn wir die Migration danach ausgeführt haben, müssen wir die Migration zuerst zurücksetzen, da durch das Löschen des Gerüsts auch die Migrationsdatei entfernt wird und wir diese Migration nicht zurücksetzen können.

Falls wir die Migration durchgeführt haben:

rake db:rollback

und danach können wir das Gerüst von diesem Kommad sicher entfernen.

Rails d scaffold Game

Dieser Befehl entfernt alle Dateien, die vom Gerüst in Ihrem Projekt erstellt wurden.

0
BIlal Khan