Rails 在没有之前 rails g 脚手架的情况下销毁脚手架

Rails destroy scaffold without previous rails g scaffold

我正在清理 rails 应用程序,我必须删除很多文件。 我试着用 "rails destroy scaffold x" 摧毁脚手架 控制台输出似乎删除了很多文件,但实际上并没有。

我不知道 "rails g scaffold" 是否用于生成所有文件,所以我的问题是:如果 "rails g scaffold" 未用于创建该文件,是否可以使用 "rails destroy scaffold"?

不确定您被告知应用程序是如何构建的,但如果他们不使用脚手架,则没有任何脚手架可以移除。我不确定您使用 rails 的经验如何,但它包含一个 MVC 模型。当我进行重构时,我只是删除了我试图摆脱的模型、视图和控制器。此外,为了删除模型并将其从数据库中删除,请遵循此 。希望对您有所帮助。

我发现销毁脚手架,只会生成删除文件的路径,例如:

rails d scaffold my_directory/something

在控制台中生成下一个输出:

    invoke  active_record
      remove    db/migrate/20170901061811_create_my_directory_somethings.rb
      remove    app/models/my_directory/something.rb
      invoke    test_unit
      remove      test/models/my_directory/something_test.rb
      remove      test/fixtures/my_directory/somethings.yml
      invoke  resource_route
       route    namespace :my_directory do
    resources :somethings
  end
      invoke  scaffold_controller
      remove    app/controllers/my_directory/somethings_controller.rb
      invoke    haml
      remove      app/views/my_directory/somethings
      remove      app/views/my_directory/somethings/index.html.haml
      remove      app/views/my_directory/somethings/edit.html.haml
      remove      app/views/my_directory/somethings/show.html.haml
      remove      app/views/my_directory/somethings/new.html.haml
      remove      app/views/my_directory/somethings/_form.html.haml
      invoke    test_unit
      remove      test/controllers/my_directory/somethings_controller_test.rb
      invoke    helper
      remove      app/helpers/my_directory/somethings_helper.rb
      invoke      test_unit
      invoke    jbuilder
      remove      app/views/my_directory/somethings
      remove      app/views/my_directory/somethings/index.json.jbuilder
      remove      app/views/my_directory/somethings/show.json.jbuilder
      remove      app/views/my_directory/somethings/_my_directory_something.json.jbuilder
      invoke  assets
      invoke    coffee
      remove      app/assets/javascripts/my_directory/somethings.coffee
      invoke    scss
      remove      app/assets/stylesheets/my_directory/somethings.scss
      invoke  scss

这会生成一些文件应在的路径,并尝试删除该文件(如果存在),如果您使用脚手架或手动创建该文件,请不要介意。但是,如果某些文件不存在,它只会在控制台输出中没有建议的情况下跳过这些文件

在我的应用程序中,文件没有在正确的目录中创建,因此 railsd 脚手架无法删除它