回答:
rails destroy controller lalala
rails destroy model yadayada
rails destroy scaffold hohoho
Rails 3.2ではd
コマンドに新しいショートカットが追加されているため、次のように記述できます。
rails d controller lalala
rails d model yadayada
rails d scaffold hohoho
rails destroy scaffold lalalal
でうまくいった。
rails generate <gemname>:install
-f
フラグを付けてジェネレータを再実行して、ファイルを強制的に再作成/再編集させることです...次に、どのファイルが作成/変更されたかを確認し、手動でそれらを削除します。
-p
ここでフラグについて言及する価値があります(「p」は「ふり」)。
これをコマンドに追加すると、単に「テスト」が実行され、実際に削除せずに削除されるファイルが表示されます。
$ 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
問題がなければ、-p
フラグを付けずにコマンドを再度実行してください。
これはRailsでコントローラーまたはモデルを生成または破棄するためのプロトタイプです。
rails generate/destroy controller/model [controller/model Name]
たとえば、ユーザーコントローラを生成する必要がある場合:
rails generate controller User
または
rails g controller User
ユーザーコントローラーを破棄する場合、または上記のアクションに戻す場合は、次のコマンドを使用します。
rails destroy controller User
または:
rails d controller User
コントローラーを手動で削除したい場合:
コントローラー用 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
それを逆にするには、破壊するだけです。ターミナルアプリケーションを開き、プロジェクトディレクトリに移動して、次のように入力します。
rails destroy model CamelCase
rails destroy controller CamelCase
どこでCamelCase
どんなモデルやコントローラの名前です。モデル、移行、および関連するテストファイルの一部が削除されます。(コマンドを実行すると、結果がターミナルウィンドウに表示されます。)
選択したモデルの足場を削除しました:
bin/rails d scaffold <AccessControl> //model name