在Rails 5.2中禁用活动存储

lul*_*ala 20 rails-activestorage ruby-on-rails-5.2

将Rails升级到5.2,我发现我必须将storage.yml提交到版本控制中.我不打算使用ActiveStorage.有没有办法禁用它?

bor*_*ric 31

删除下一行 config/application.rb

require "active_storage/engine"
Run Code Online (Sandbox Code Playgroud)

从环境中删除下一行 config/environments/*.rb

config.active_storage.service = :local
Run Code Online (Sandbox Code Playgroud)

删除下一行 app/assets/javascripts/application.js

//= require activestorage
Run Code Online (Sandbox Code Playgroud)

ActiveStorage rails路由将消失

如果有声明require 'rails/all',application.rb那么你可以使用下面提供的解决方案,你需要依赖依赖并省略active_storage.


Mik*_*rs0 8

到目前为止config/application.rb,我发现的唯一解决方案是,替换为:

require 'rails/all'
Run Code Online (Sandbox Code Playgroud)

带有:

require "rails"

# Include each railties manually, excluding `active_storage/engine`
%w(
  active_record/railtie
  action_controller/railtie
  action_view/railtie
  action_mailer/railtie
  active_job/railtie
  action_cable/engine
  rails/test_unit/railtie
  sprockets/railtie
).each do |railtie|
  begin
    require railtie
  rescue LoadError
  end
end
Run Code Online (Sandbox Code Playgroud)

摘自Rails的资料