将 Rails 升级到 5.2,我发现我必须将 storage.yml 提交到版本控制中。我不打算使用 ActiveStorage。有没有办法禁用它?
问问题
12143 次
3 回答
44
删除下一行config/application.rb
require "active_storage/engine"
从环境中删除下一行config/environments/*.rb
config.active_storage.service = :local
删除下一行app/assets/javascripts/application.js
//= require activestorage
ActiveStorage rails 路线将消失
如果有声明require 'rails/all'
,application.rb
那么您可以使用下面提供的解决方案,您需要逐个依赖并省略active_storage
.
于 2018-05-12T14:38:23.423 回答
21
到目前为止,我发现的唯一解决方案是 in config/application.rb
,替换:
require 'rails/all'
和:
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
取自 Rails 的源代码。
于 2018-04-13T22:57:42.577 回答
3
从config/environments/*.rb
config.active_storage.service = :local
Rails 将不会加载 yaml 文件。
于 2018-04-13T09:06:42.820 回答