有没有办法在Rails中“撤销”脚手架命令的效果?
当前回答
Rails销毁名称
rake db:rollback
其他回答
当我们生成脚手架时,会创建以下文件:
命令:rails生成脚手架游戏
创建的文件:
> 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
如果我们在此之后运行了迁移,那么我们必须首先回滚迁移,因为删除脚手架也会删除迁移文件,我们将无法恢复迁移。
如果我们已经运行了迁移:
rake db:rollback
在此之后,我们可以通过这个命令安全地移除脚手架。
rails d scaffold Game
该命令将删除项目中由脚手架创建的所有文件。
建议回退首先,键入您的终端。
rake db:rollback
添加破坏脚手架(“d”代表“destroy”)
rails d scaffold name_of_scaffold
享受你的代码。
首先,如果您已经运行了由scaffold命令生成的迁移,那么您必须首先执行回滚。
rake db:rollback
你可以使用以下方法创建脚手架:
rails generate scaffold MyFoo
(或类似),并且您可以使用
rails destroy scaffold MyFoo
这将删除generate创建的所有文件,但不会删除手动进行的任何其他更改。
你也需要在摧毁脚手架后回滚迁移
rails destroy scaffold 'scaffoldname'
rake db:rollback
Rails [option] scaffold脚手架名称
选项
g generate
d destroy
如果有的话
rails g scaffold myFoo
然后反向使用
rails d scaffold MyFoo
推荐文章
- 如何记录Ruby代码?
- Ruby:包含的反义词是什么?Ruby数组?
- 想要在Rails中找到没有关联记录的记录
- helper和helper_method做什么?
- 如何回滚只是一个步骤使用耙db:迁移
- 在Ruby中,proc和lambda有什么区别?
- 如何传递参数到一个Rake任务与环境在Rails?
- 获取当前正在执行的方法的名称
- 如何在Rails中计算相对时间?
- 如何在Rails迁移中将可空列更改为不可空列?
- 在Ruby中使用范围填充数组的正确方法
- “for”和“each”在Ruby中
- Ruby on Rails -从CSV文件导入数据
- 我如何复制一个哈希在Ruby?
- Ruby/Rails:将Date转换为UNIX时间戳