Cómo revertir una 'generación de rieles'
Quiero eliminar todos los archivos que creó y revertir los cambios realizados, pero no necesariamente en la base de datos, sino más bien en los archivos de configuración.
¿Me gustaría eliminar automáticamente todas las asignaciones de recursos para el modelo/controlador eliminado en el archivo route.rb y en todos los demás lugares donde se puedan haber realizado cambios?
rails destroy controller lalala
rails destroy model yadayada
rails destroy scaffold hohoho
Rails 3.2 agrega un nuevo d
atajo al comando, por lo que ahora puedes escribir:
rails d controller lalala
rails d model yadayada
rails d scaffold hohoho
Vale la pena mencionar -p
aquí la bandera ("p" de fingir ).
Si agrega esto al comando, simplemente realizará una ejecución de "prueba" y le mostrará qué archivos se eliminarán sin eliminarlos realmente.
$ 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
Si está satisfecho con él, ejecute el comando nuevamente sin la -p
bandera.
rails destroy controller Controller_name
estaba devolviendo un montón de errores. Para poder destruir el controlador tuve que eliminar las rutas relacionadas en route.rb. PD: estoy usando rieles 3.1
Este es un prototipo para generar o destruir un controlador o modelo en Rails:
rails generate/destroy controller/model [controller/model Name]
Por ejemplo, si necesita generar un controlador de usuario:
rails generate controller User
o
rails g controller User
Si desea destruir el controlador de usuario o volver a la acción anterior, utilice:
rails destroy controller User
o:
rails d controller User