510 Stimmen

Rückgängig machen Gerüstbau in Rails

Gibt es einen Weg, um die Auswirkungen eines Gerüstbefehls in Rails rückgängig zu machen?

0voto

BIlal Khan Punkte 455

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

Befehl: rails generate scaffold Game

Erstellte Dateien:

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

Wenn wir die Migration nach dieser durchgeführt haben, müssen wir die Migration zuerst zurückrollen, da die Löschung des Gerüsts auch die Migrationsdatei entfernen wird und wir diese Migration nicht wiederherstellen können.

Falls wir die Migration durchgeführt haben:

rake db:rollback

und danach können wir das Gerüst sicher durch diesen Befehl entfernen.

rails d scaffold Game

Dieser Befehl wird alle Dateien entfernen, die durch das Gerüst in Ihrem Projekt erstellt wurden.

0voto

Maddie Punkte 83

Jedes Mal, wenn du rails g ausführst, kannst du es umkehren, indem du rails d (destroy) ausführst, um das zu entfernen, was du generiert hast. Wenn du bereits rake db:migrate ausgeführt hast, musst du rake db:rollback ausführen, bevor du zerstörst :)

0voto

Manoj Kumar Punkte 236

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

rails generate scaffold MODEL_NAME FIELD_NAME:DATATYPE

Beispiel - rails generate scaffold User name:string address:text

aber bisher haben Sie keinen Befehl für die Migration ausgeführt, wie

rake db:migrate

dann sollten Sie nur diesen Befehl ausführen wie -

rails destroy scaffold User name:string address:text

Fall 2: Wenn Sie bereits (Gerüst und Migration) mit den folgenden Befehlen ausgeführt haben, wie -

rails generate scaffold User name:string address:text

rake db:migrate 

Dann sollten Sie zuerst den Befehl zur Rückgängigmachung der Migration ausführen und dann das Gerüst zerstören wie unten -

rake db:rollback

rails destroy scaffold User name:string address:text

So können wir auf diese Weise das Gerüst rückgängig machen. Außerdem können wir d für destroy und g für generate als Abkürzung verwenden.

0voto

Ayaz Ahmad Tarar Punkte 534
rails g scaffold MyFoo 

für das Generieren und

rails d scaffold MyFoo

für das Entfernen

0 Stimmen

Und es ist nicht nötig, die Attribute zu erwähnen, ist das korrekt? Danke

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X