我想删除它创建的所有文件,并回滚所做的任何更改,但不一定是数据库,而是配置文件。

我想自动删除路由中删除的模型/控制器的所有资源映射。Rb文件和其他地方的变化可能已经作出?


当前回答

您可以通过以下方式撤销一个rails生成:

对于模型:rails会破坏model 控制器:rails destroy controller_name

其他回答

这里值得一提的是-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 destroy:

rails destroy Model

更多信息请参见“rails destroy”。

假设我创建了一个名为“sample”的控制器:

rails generate controller sample

如果我要销毁这个控制器,我要做的就是交换生成和销毁

rails destroy controller sample.

如果你想反向生成,你只需要把生成和销毁交换。

如果使用Rails,请使用Rails d controller Users。

并且,如果您使用Zeus,请使用Zeus的控制器用户。

另一方面,如果您正在使用git或SVN,请使用提交号恢复您的更改。这个要快得多。

移除选定模型的脚手架:

bin/rails d scaffold <AccessControl> //model name